C++ STL에서 반복자 iterator가 무엇인지 알고싶습니다.
현재 예전에 배운 알고리즘 분야를 복습하고 있는데요.
잘 기억이 안나는 부분이 있어 문의 드립니다.
C++ STL에서 반복자 iterator가 무엇인지, 어떠한 역할을 제공하는 지 알고 싶습니다.
55글자 더 채워주세요.
1개의 답변이 있어요!
반복자는 컨테이너에 저장된 원소를 순회하고 접근하는 일반화된 방법을 제공합니다.
반복자는 컨테이너와 알고리즘이 하나로 동작하게 묶어주는 인터페이스 역할을 합니다.
이 반복자 덕에 알고리즘은 특정 컨테이너에 종속적이지 않고 독립적이면서도 언제든지 컨테이너와 결합하여 동작할 수 있습니다.
- 반복자는 컨테이너 내부의 원소(객체)를 가리키고 접근할 수 있어야 합니다. (* 연산자)
- 반복자는 다음 원소로 이동하고 컨테이너의 모든 원소를 순회할 수 있어야 합니다. (++, !=, == 연산자 제공)
순차열은 하나의 시작과 하나의 끝을 갖습니다. 여기서 반복자는 순차열의 한 원소를 가리킵니다.
순차열의 시작은 begin() 끝은 end() 이며, end()는 실제 원소의 끝이 아닌 끝을 표시하는 원소입니다.
반 개구간 [begin, end)
(반복자(iterator)의 구간은 [begin, iter) , [iter, end) 가 됩니다.)
vector<int> 반복자(iterator)는 다음과 같이 선언합니다.
vector<int>::iterator iter;