728x90
▶ iterator(반복자)
- 포인터와 상당히 비슷하며 컨테이너에 저장되어 있는 원소들을 참조할 때 사용함.
- 추상적으로 말하자면, 반복자란 컨테이너에 저장되어 있는 모든 원소들을 전체적으로 한번 훑어 나갈 때 사용하는 일종의 포인터 비슷한 객체임.
- 알고리즘마다 각기 다른 방식으로 컨테이너를 훑어가기 때문에 반복자에도 여러가지 종류가 있음.
▶ 반복자의 성질
- 컨테이너와 컨테이너 안의 요소를 구별
- 요소의 값 확인
- 컨테이너 안에 있는 요소들 간에 이동할 수 있는 연산 제공
- 컨테이너가 효과적으로 처리할 수 있는 방식으로 가용한 연산들을 한정
▶ 반복자의 종류
입력 반복자(input iterator)
읽기만 가능, 순방향이동,현 위치의 원소를 한번만 읽을 수 있는 반복자
출력 반복자(output iterator)
쓰기만 가능, 순방향 이동, 현 위치의 원소를 한번만 쓸 수 있는 반복자
순방향 반복자(forward iterator)
읽기/쓰기 모두 가능, 순방향 이동(++)이 가능한 재할당 될 수 있는 반복자
양방향 반복자(bidirectional iterator)
읽기/쓰기 모두 가능, 순/역 방향 이동(—)이 가능한 반복자
임의 접근 반복자(random access iterator)
읽기/쓰기 모두 가능, 임의 접근, 양방향 반복자 기능에 +,-,+=,-=,[] 연산이 가능
728x90
'학과 공부 > C & C++' 카테고리의 다른 글
[C++] fill 함수에 대해 알아보자 (0) | 2024.02.22 |
---|---|
포인터배열과 배열포인터 예제,이중포인터 예제 배열과 포인터[C프로그래밍] (2) | 2023.11.18 |
포인터의 활용(1)[C프로그래밍] (0) | 2023.11.17 |
union,enum,typedef[C프로그래밍] (0) | 2023.11.14 |
구조체(2)[C프로그래밍] (1) | 2023.11.03 |