카테고리 없음

STL 메모

끄적끄적 2008. 9. 24. 18:49

* 내림차순으로 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;
    }
   
반응형