cgc96   4년 전

5000 4999

1 1

이런 입력들은 잘 돌아가는데 어디서 런타임에러가 발생하는걸까요? ㅠㅠ

ckdgus2482   4년 전

erase 후에는 이전의 iterator가 무효해지는 경우가 있습니다

ckdgus2482   4년 전

L.erase(it++) 이런식으로 삭제해야 무효화를 피할 수 있습니다

cgc96   4년 전

와 정말 놀랍군요 

it = L.erase(it);

it--;

로 고치니 맞았습니다. 그원리가 어떻게 된건지는 잘 모르겠지만 확실히 erase후 iterator가 무효해지는 경우가 있는거 같네요 감사합니다.

댓글을 작성하려면 로그인해야 합니다.