범위 기반 for

for

C++11 표준안(2011년)부터 범위 기반 for문(range-based for)이 지원된다.

범위 기반 for문은 반복 가능한 타입의 자료를 마지막 자료까지 하나씩 반복, 복사하여 처리한다.

for(저장할 변수: 반복 가능한 타입)

실습 예제

ch05ex4_for.cpp

#include <iostream>

using std::cout;
using std::cin;
using std::endl;

int main()
{
	int arr[] = { 10, 20, 30, 40, 50 };
	for (int one : arr)
		cout << one << " ";
	cout << endl;

	return 0;
}

자료를 복사하면 overhead(시간, 메모리)가 증가되므로 값의 변경이 없다면 일반적으로 참조하여 처리하는 방법을 사용한다.

실습 문제

ch05lab1_sum.cpp

주어진 배열 arr의 합을 구하는 코드를 range-based for문을 사용해 구현하시오. 배열 arr은 위 예시 코드와 동일하다.

ch05lab2_product.cpp

제품 데이터를 저장하는 product 구조체를 생성하여 출력하는 코드를 작성하시오. (제품 정보의 출력은 printProduct()함수를 생성해 작성하시오.)

Last updated