• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    해결됨

list#2에서 질문

21.02.08 20:58 작성 조회수 111

0

list에서 이터레이터에 대해 질문이 있습니다.

list<int> li;

for (int i = 0; i < 100; i++)

li.push_back(i);

list<int>::iterator itBegin = li.begin();

이 코드에서 itBegin을 메모리로 까보면

itBegin

0x00EFFE58 | 0120 0368

0x00EFFE5C | 0000 0000

0x00EFFE60 | 0120 1ba0

이런식으로 나오던데

0120 1ba0 이 주소는 0이 들어가 있을 첫번째 node의 _next 주소인 것을 확인했습니다

그렇다면 위에 있는 나머지 두 개는 뭘 뜻하는 건가요?

0x00EFFE58 | 0120 0368

0x00EFFE5C | 0000 0000

이 두 개가 무엇을 뜻하는지 궁금합니다.

==> 혹시 못 보신 것 같아 위쪽으로 재업했습니다.

답변 2

·

답변을 작성해보세요.

1


디버그 모드일 때 iterator가 속한 Container 정보를 담는 것으로 보이는데
디버그 레벨에 따라 없어질 수 있으니 크게 신경쓸 부분은 아닙니다.

추가로 최근에 강의가 많아지면서,
그와 비례해서 질문이 급격히 많이 올라오고 있습니다.
질문들을 보고 간단하게 즉시 대답이 가능하거나,
당장 이해하지 못하면 진행에 차질이 생기는 질문부터
우선적으로 답해드리고 있으니 이 점 참고 바랍니다.

0

혹시나 못 보신건 아닌지 하는 마음에 조급했던 것 같습니다. 답변 감사합니다!