살아가는 이야기
C++11: 자료구조에 대한 for 루프 본문
C++11에 자료구조에 대한 for 루프가 추가되었다[C++11에서는 구간 for 문(range-for statement)이라고 부름]. 예전에 스크립트 언어에 있던 것이 Java 1.5에 추가되더니만, 급기야 C++11까지 전파되었다. 사용하기 매우 편하니 알아두는 것이 좋겠다. 샘플코드는 다음과 같다.
#include <iostream>#include <vector>#include <iterator>#include <algorithm>using namespace std;int main() {int ns[] = {1, 3, 5, 7, 9}, size = sizeof ns / sizeof *ns;ostream_iterator<int> outport(cout, " ");copy(ns, ns+size, outport); cout << endl;for (int &n : ns) {n *= n;}copy(ns, ns+size, outport); cout << endl;}
위 코드는 1부터 10까지 홀수의 제곱을 모두 출력하는 프로그램이다.
Comments