ass="literal-block">
map_type::value_type       a_value      = *m.begin();
a_value.second-&gt;foo();
map_type::reference        a_reference  = *m.begin();
a_reference.second-&gt;foo();
map_type::const_reference  a_creference = *const_begin(m);
map_type::pointer          a_pointer    = &amp;*m.begin();
a_pointer-&gt;second-&gt;foo();
map_type::const_pointer    a_cpointer   = &amp;*const_begin(m);
</pre>
<p>The difference compared to <tt class="docutils literal"><span class="pre">std::map&lt;Key,T*&gt;</span>