title: Call a function later
body: <p>I'm parsing user input and doing, as an example, the following in response:</p>
  
  <p><strong>User Input 1:</strong></p>
  
  <pre><code>Array&lt;int&gt; a;
  Populate()(a);
  int v = 10;
  a.append(v);
  </code></pre>
  
  <p><strong>User Input 2:</strong></p>
  
  <pre><code>Array&lt;bool&gt; a;
  Populate()(a);
  int v = true;
  a.remove(v);
  </code></pre>
  
  <p><strong>User Input 3:</strong></p>
  
  <pre><code>Array&lt;bool&gt; a;
  Populate()(a);
  a.removeAll();
  </code></pre>
  
  <p>Now lets say I wish to execute the functions at a later stage, such that the parse creates the Array object, establishes the command to execute for this Array(removeAll etc.) as well as the arguments, but doesn't actually call the command - this calling occurs at a later stage.</p>
  
  <p>Is there a std or boost library which might help me to do achieve such a behaviour?</p>