title: Difference between copy_n and copy
body: <p>Difference between following? Which one has undefined behavior? Both?</p>
  
  <pre><code>std::copy_n(asdf.begin(), asdf.size(), asdf.begin());
  std::copy(asdf.begin(), asdf.end(), asdf.begin());
  </code></pre>
  
  <p>Assume a <code>std::vector&lt;int&gt;</code> is given to the function. And the two functions are not the same like some people are saying.</p>
  
  <p>Is this a defect in the standard?</p>