重複の可能性:
std::map からアイテムをフィルタリングする方法は?
最初から最後まで繰り返しながら、マップ要素で erase() を呼び出すとどうなりますか?
オブジェクトのマップがあり、それを繰り返し処理していくつかのエントリを削除したいと考えています。
typedef std::map<A,B> MapT;
MapT m;
MapT::iterator it;
for(it = m.begin(); it != m.end(); it++ ) {
if( condition ) m.erase(it);
}
この方法でできますか?