빈 컨테이너에서 back()
연산자가 반환 한 참조 주소를 실수로 가져 와서 그 주소가 0이 아닌 것을보고 놀랐습니다.빈 컨테이너에서 back()의 주소는 무엇입니까?
예 : std :: deque가 비어 있는데, back()
은 무엇을 반환합니까?
빈 컨테이너에서 back()
연산자가 반환 한 참조 주소를 실수로 가져 와서 그 주소가 0이 아닌 것을보고 놀랐습니다.빈 컨테이너에서 back()의 주소는 무엇입니까?
예 : std :: deque가 비어 있는데, back()
은 무엇을 반환합니까?
마지막 요소를 반환합니다. 이 페이지
: http://www.sgi.com/tech/stl/BackInsertionSequence.html
전제 : a.empty() * 상당
(- a.end())!에.
전치 조건은 비어 있지 않기 때문에 비 정의 동작이므로 비어 있습니다.
빈 표준 컨테이너에서 front
또는 back
을 호출하면 정의되지 않은 동작이 발생합니다.
또한 첫 번째 요소의 "논리적"위치 바로 앞에있는 요소 중 하나 일 가능성이 높습니다. 나는 주소가 논리적으로 (배열과 같은 컨테이너에 대해) 말하고있는 "논리적"장소이긴하지만 "앞"의 행동은 논리적으로 동일하다고 말해야한다. –