다른 컨테이너의 반복자 비교
C에서는 다른 컨테이너를 다룰 때 반복자 비교에 적용되는 원칙을 이해하는 것이 중요합니다. "개별 컨테이너의 반복자를 비교하는 것이 허용됩니까?"라는 질문이 생깁니다.
이에 답하기 위해 C 11 표준(n3337)을 참조합니다.
RandomAccessIterator는 ForwardIterator의 요구 사항을 상속하므로 서로 다른 컨테이너의 반복자를 비교하는 것은 정의되지 않은 동작입니다.
LWG 문제 #446에서는 이 문제를 구체적으로 다루고 제안합니다. 표준에 대한 다음 수정 사항:
"두 개의 다른 범위 r1 및 r2에서 얻은 두 개의 반복자 값을 인수로 사용하는 비교 함수 또는 이진 연산자를 직접 또는 간접적으로 평가한 결과는 명시적으로 정의되지 않는 한 정의되지 않습니다. "
이 수정 사항은 공통 범위의 하위 범위가 아닌 한 다른 컨테이너의 반복자를 비교하는 것이 정의되지 않은 동작임을 강조합니다.
위 내용은 다른 컨테이너의 반복자를 C에서 비교할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!