C++제어 흐름

반복문 기초

`for`, range-based `for`, `while`을 중심으로 C++ 반복 처리의 핵심 패턴을 정리합니다.

마지막 수정 2026년 3월 19일

기본 패턴

cpp
for (const auto& value : values) {
    std::cout << value << "\n";
}

설명

  • 전통적인 for는 인덱스 기반 순회에 적합합니다.
  • range-based for는 컨테이너 원소를 더 간단하게 순회하게 해 줍니다.
  • while은 조건이 만족되는 동안 반복하는 구조라 입력 처리나 시뮬레이션에 자주 쓰입니다.
  • break, continue 의미는 C와 유사하지만, 반복 대상이 컨테이너일 때는 범위 기반 문법이 훨씬 읽기 좋습니다.

짧은 예제

cpp
#include <iostream>
#include <vector>

int main() {
    std::vector<int> values{3, 7, 10, 12};

    for (int value : values) {
        if (value % 2 == 0) {
            std::cout << "first even = " << value << "\n";
            break;
        }
    }
}

빠른 정리

항목설명
전통 for인덱스와 범위를 직접 관리
range-based for컨테이너 원소를 간단히 순회
while조건 중심 반복
break반복 즉시 종료
continue현재 회차를 건너뜀

주의할 점

컨테이너를 값으로 순회하면 원소가 복사될 수 있습니다. 큰 객체는 const auto&처럼 참조로 읽는 편이 더 효율적입니다.