[개발 지식][error] C++ : vector의 제일 첫 요소 erase후 front 결과


vector의 젤 첫 요소이자 마지막 요소를 erase한다면 내 예상에는 빈벡터가 되어야 하고, 

vector front한 결과는 '' 이 값이어야 한다. 즉 비어 있어야 한다.


하지만, 실제 실행해보게 된다면, 없애기 전의 값을 reference하는 것을 볼 수 있다.

혹시 vector의 size가 바뀌지 않은 것인가 싶어서 size를 호출해보면 0이되고,

at함수로 그 장소에 있는 값을 보면 at(0)이 없다고 나온다.


내 예상으로는 vector의 젤 첫 요소가 마지막 요소면, erase해도 vector의 제일 첫 주소를 기억하는거니깐 vector.front()하면 vector size가 0이라도 거기 담겨 있는 값을 참조하는 듯..


내 예상이고, 실제로는 잘 모르겠다. ㅠ 아무리 찾아도 안나와서 ㅠ


error발견한 문제 : https://monghead.blogspot.com/2020/10/level-1_8.html

댓글 쓰기

0 댓글