typedef std::map<std::string, float> StringFloatMap;
StringFloatMap col1;
StringFloatMap::iterator pos;
...
//remove all element having a certain value
for(pos=col1.begin(); pos != col1.end();){
}
注意:pos++会将pos移向下一元素,但返回其原始值(指向原位置)的一个副本。因为,当erase()被调用,pos已经不再指向那个即将被移除的元素。