chai5605   4년 전

30번째 줄에 l = v.erase(l); 를 지우면 이 코드가 실행이 되기는 하는데 저 코드를 쓰면 이 코드가 런타임 에러가 뜨면서 실행이 안되는데 저게 왜 문제가 되는건가요??

nahwasa   4년 전

l = v.erase(l);

에서 erase가 성공할 경우 l이 자동으로 증가하는 부분에서 문제가 생긴 듯 합니다.

아마도 l이 마지막껄 가르키고 있을 때 삭제될 경우 문제가 생겼을 듯 하네요.

코드에서는 삭제되던 안되던 무조건 for문에서 l++ 를 하시니까요.

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