title: What is multimap::emplace() and move()?
body: <p>I was viewing the MSDN doc about multimap and find that it has a member function multimap::emplace(). Below is the example of that member function.</p>
  
  <pre><code>int main( ) {
     using namespace std;
     multimap&lt;int, string&gt; m1;
     pair&lt;int, string&gt; is1(1, "a");
  
     m1.emplace(move(is1));
  }
  </code></pre>
  
  <p>It seems that <code>emplace()</code> and <code>move()</code> are C++0x. Can someone explain them for me? I read about <code>move()</code>, but I really don't understand what does it do (under the hood).</p>