废话不多说,直接上代码:
map<int,int>test;
for (int i=1;i<10;i++)
{
test.insert(make_pair(i,i));
}
map<int,int>::const_iterator mit = test.begin();
for (;mit!=test.end();)
{
map<int,int>::const_iterator mit_back = mit;
if (mit_back!=test.end())
{
++mit_back;
}
if ((mit->first == 1) || (mit->first == 2) || (mit->first == 9))
{
test.erase(mit);
mit = mit_back;
if (mit_back!=test.end())
{
++mit_back;
}
}else
{
++mit;
}
}