iterator
반복자 무효화 재판단
삽입, 삭제, 재할당 뒤 기존 위치가 그대로 유효한지 다시 확인해야 한다.
vector재할당과 삭제 뒤 이동
deque중간 수정은 넓게 재확인
list삭제 노드만 끊김
map/set삭제 대상만 끊김
| 구분 | 판단 기준 | 다음 행동 |
|---|---|---|
| 삽입 | 내부 저장소가 새로 잡히는가 | vector capacity, unordered rehash 확인 |
| 삭제 | 삭제 지점 뒤 원소가 이동하는가 | erase 반환 반복자로 이어가기 |
| 노드 기반 | 기존 노드 주소가 유지되는가 | 삭제된 원소의 반복자만 버리기 |
| 판정 | 수정 뒤 기존 반복자를 믿어도 되는가 | 애매하면 다시 얻는다 |
핵심 무효화 판단은 컨테이너 이름보다 “원소가 이동했는가, 삭제된 대상인가”를 먼저 묻는다.