title: std::Vector push_back time for first element significantly greater than subsequent elements
body: <p>I have created a vector of integers. I find that the time taken for first push_back is significantly greater than the subsequent push_back. Why is it so. To avoid reallocation I have reserved the size of vector.</p>
  
  <pre><code>std::vector&lt;int&gt; myList;
  myList.reserve(10);
  
  for(int i = 0; i &lt; 10; ++i)
  {
    myList.push_back(rand() % 100);
  }
  </code></pre>
  
  <p>The timings obtained for push_back (in nanoseconds) are as follows. I am compiling the program with <code>-O3</code> flag on.</p>
  
  <pre><code>1536
  166
  124
  127
  119
  125
  127
  125
  126
  127
  </code></pre>
  
  <p>Could someone please explain the huge difference of <code>10</code> times.</p>