C 11의 범위 기반 구문 이해
C 11의 범위 기반 for 루프는 컨테이너 반복을 위한 단순화된 구문을 제공합니다. 구문은 컨테이너의 요소를 관찰할지 수정하려는지 여부에 따라 다릅니다.
요소 관찰의 경우
요소를 수정하지 않고 관찰하려면 권장 구문은 다음과 같습니다.
for (const auto& elem : container)
이 구문은 const 참조로 요소를 캡처하여 개체 비용이 많이 드는 경우 불필요한 복사본을 피합니다. copy.
요소 수정용
요소를 수정해야 하는 경우 구문은 다음과 같습니다.
for (auto& elem : container)
이 구문은 요소를 캡처합니다. 상수가 아닌 참조로 루프 본문에서 수정할 수 있습니다.
특수 사례: 프록시 반복자
그러나 프록시 반복자를 사용하는 컨테이너(예: std::Vector
for (auto&& elem : container)
이것은 구문은 "&&" 유형 수정자를 사용하여 프록시와 올바르게 작동합니다. iterators.
요약
위 내용은 올바른 C 11 범위 기반 'for' 루프 구문을 선택하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!