title: unordered_map insert() error
body: <p>I can compile this code that I got from an <a href="http://msdn.microsoft.com/en-us/library/bb982431.aspx" rel="nofollow">MSDN page</a>:</p>
  
  <pre><code>using namespace std
  typedef std::unordered_map&lt;char, int&gt; Mymap; 
  Mymap c1;
  
  c1.insert(Mymap::value_type('a', 1)); 
  c1.insert(Mymap::value_type('b', 2)); 
  c1.insert(Mymap::value_type('c', 3)); 
  </code></pre>
  
  <p>But when I change it to be:</p>
  
  <pre><code>using namespace std
  typedef std::unordered_map&lt;int, vector&lt;int&gt; &gt; Mymap;
  Mymap c1;
  
  c1.insert(Mymap::value_type(1, vector&lt;int&gt; v (1,1))); 
  c1.insert(Mymap::value_type(2, vector&lt;int&gt; v (1,2))); 
  c1.insert(Mymap::value_type(3, vector&lt;int&gt; v (1,3))); 
  </code></pre>
  
  <p>I get the errors (the line numbers are obviously off for the snippet):</p>
  
  <pre><code>myfile.cpp:121:29: error: expected primary-expression before ‘(’ token
  myfile.cpp:121:45: error: expected primary-expression before ‘v’
  myfile.cpp:122:32: error: expected primary-expression before ‘(’ token
  myfile.cpp:122:48: error: expected primary-expression before ‘v’
  myfile.cpp:123:32: error: expected primary-expression before ‘(’ token
  myfile.cpp:123:48: error: expected primary-expression before ‘v’
  </code></pre>
  
  <p>The hash map should be "int => list of ints". With the list being initialized with one number.</p>
  
  <p>What is the problem here? Do I need to use something other than <code>value_type</code> ?</p>