截取项目中的部分代码:
map<int, int> IOIDModeMap;
map<int, int>::iterator IOModeMapIter;
for (IOModeMapIter= IOIDModeMap.begin(); IOModeMapIter!= IOIDModeMap.end(); )
{
Log( "[%d]=[%d]",IOModeMapIter->first, IOModeMapIter->second);
map<int, int>::iterator it_back = IOModeMapIter;
bool is_first_element = false;
if(it_back != IOIDModeMap.begin())
it_back --;
else
is_first_element = true;
if( IOModeMapIter->first == IOIDi || IOModeMapIter->first == IOIDi+1)
{
IOIDModeMap.erase(IOModeMapIter);
if(is_first_element)
IOModeMapIter = IOIDModeMap.begin();
else
IOModeMapIter = ++it_back;
}else
IOModeMapIter++;
}