title: Error while assigning a pair value to a map key
body: <p>This is excerpt from my code:</p>
  
  <pre><code>std::map&lt;int, std::pair&lt; const int, const std::vector&lt;POINT_3d&gt; &gt; &gt; m_srcHitData;
  void addHit( const int edgeId, const int hit )
  {
    m_srcHitData[edgeId] = std::make_pair( hit, std::vector&lt;POINT_3d&gt;() );
  }
  </code></pre>
  
  <p>I keep getting the error:</p>
  
  <blockquote>
  <pre><code>   stl_pair.h(180): error: no operator "=" matches these operands
                  operand types are: const std::vector&lt;POINT_3d, std::allocator&lt;POINT_3d&gt;&gt; = const std::vector&lt;POINT_3d, std::allocator&lt;POINT_3d&gt;&gt;
                second = __p.second;
                       ^
      detected during instantiation of "std::pair&lt;_T1, _T2&gt; &amp;std::pair&lt;_T1, _T2&gt;::operator=(const std::pair&lt;_U1, _U2&gt; &amp;)
  </code></pre>
  </blockquote>
  
  <p>What does that mean? I tried different approaches but still getting this or similar error. Thank you!</p>