* 내림차순으로 set을 생성
set< int, greater<int> > coll;
* map에서 iterator로 반복하면서 삭제(erase)할 경우 반복자가 무효화 될 수 있다.
- 위험한 코드
for(pos = coll.begin(); pos != coll.end(); )
{
if(pos->second == value)
coll.erase(pos);
}
- 좋은 코드
for(pos = coll.begin(); pos != coll.end(); )
{
if(pos->second == value)
coll.erase(pos++);
else
++pos;
}
반응형