2010-03-02 2 views
7

set.find()에서 반환 한 반복자를 저장하여 std :: set 요소를 추적해야합니다.std :: set.find()에 의해 반환 된 반복자의 수명은?

내 질문은 삽입 및 제거 다른 요소는 얻은 반복기를 무효화합니까? 간단한 테스트에서 나는 그렇지 못하다는 것을 알았지 만,이 기능을 의도적으로 보장하고자합니다.

답변

11

요소에 대한 반복자 또는 포인터/참조를 무효화하지 않습니다. 요소 자체를 제거한 경우에만 반복기 또는 포인터/참조가 유효하지 않게됩니다.

23.1.2/8 :

삽입 회원 컨테이너에 반복자와 참조의 유효성에 영향을 미치지 아니한다 및 삭제 구성원이 삭제 요소 만 반복자와 참조를 무효화된다.

+0

감사합니다. 그것은 빨랐다! – jackhab

관련 문제