1. 루프에 대한 범위 기반
{(콜 자명 한 일 입니)에 대한
문
}
예를 들면 :
위한 ( int로 {I를 2 , 3 , 5 , 7 , 9 , 13 , 17 , 19 {}) 표준 : COUT << I << 표준 : ENDL; }
표준 : : 벡터 < 더블 > VEC; ... 대 (자동 및 ELEM : VEC) { ELEM * = 3 ; }
여기서 참고로 ELEM를 선언하는 것이 중요하기 때문에 벡터의 요소의 로컬 복사본에 루프 행위에 대한 본문에 그렇지 않으면 문 (때로는 유용 할 수 있음).
이 복사 생성자 및 각 요소에 대해 소멸자를 호출하지 않도록하는 것을 의미합니다, 당신은 일반적으로 일정한 기준으로 현재 요소를 선언해야합니다. 다음 따라서, 컬렉션의 모든 요소를 인쇄하는 일반적인 기능을 구현한다 :
서식 <TYPENAME T> 공극 printElements ( CONST T & 콜) { 대 ( CONST 자동 및 ELEM : 콜) { 표준 : COUT << ELEM << 표준 : ENDL; } }
범위 기반 루프 기간 동안 다음과 같은 코드에 해당합니다 :
대한 (자동 _pos = coll.begin ();! _pos = coll.end (); ++ _pos) { const를 자동 및 ELEM = * _pos; 표준 : COUT << ELEM << 표준 : ENDL; }
INT의 배열 [] = { 1 , 2 , 3 , 4 , 5 }; 긴 합 = 0 ; // 모든 요소의 공정 합 대 ( INT X : 배열) { 합계 + = X; } 대 (자동 ELEM {합계, 합계 * 2 , * 합계 4 }) { // 인쇄 15 30 60 표준 : COUT << ELEM << 표준 : ENDL; }
HTTPS : //www.cnblogs.com/davidgu/p/4607897.html 재현