title: c++ vector emplace_back is faster?
body: <p>If I have a class</p>
  
  <pre><code>class foo {
   public:
    foo() { // spend some time and do something. }
   private:
     // some data here
  }
  </code></pre>
  
  <p>Now I have a vector of foo, I want to put this vector into another vector</p>
  
  <pre><code>vector&lt;foo&gt; input; // assume it has 5 elements
  vector&lt;foo&gt; output;
  </code></pre>
  
  <p>Is there ANY performance difference with these two lines?</p>
  
  <pre><code>output.push_back(input[0])
  output.emplace_back(input[0])
  </code></pre>