LANGUAGE STUDY/C C++

[Modern C++] range-based for loop

KUNDUZ 2023. 1. 16. 16:00
728x90
반응형

range-based for loop

for( ① : ② ) { ... } : 범위 기반 for loop

 

②의 시작부터 끝까지 각 원소를 ①에 담으면서 loop 수행

    ① : 배열, 컨테이너의 각 원소를 담을 변수 선언

    ② : 구간을 반복할 배열, 컨테이너 이름

 

 

int arr[5] = {1,2,3,4,5}                              

for(auto x:arr) {x++;}

- copy value : 객체크기만큼 복사, 원본 변경 불가

- 수행 후 arr : 1,2,3,4,5

 

 

int arr[5] = {1,2,3,4,5}

for(auto &x:arr){x++;}

- copy reference : 8byte 복사, 원본 변경가능

- 수행 후 arr : 2,3,4,5,6

 

 

 

728x90
반응형