C++ でマルチマップを使用しようとしています。主な目的は、マルチマップ ポインターを格納するマップがあることです。
マルチマップに挿入しようとすると、問題が発生します。誰かが私がどこで間違っているのか教えてもらえますか?
typedef multimap<int,int> mm;
typedef map<int,mm*> v_map;
int main()
{
v_map map1;
v_map::iterator it;
it = map1.find(23);
mm *mm_map_pointer;
if( it == map1.end())
{
mm m_map1;
map1[23] = &m_map1;
mm_map_pointer = &m_map1;
}
else
{
mm_map_pointer = it->second;
}
mm_map_pointer->insert( pair<int, int>(1, 2));
return 0;
}
問題は mm_map_pointer->insert( pair(1, 2)); にあります。誰か助けてくれませんか?