- CHAPTER 17 반복자와 범위 라이브러리
- CHAPTER 18 표준 라이브러리 컨테이너
목차
- 반복자의 세부사항
- 스트림 반복자 사용법
- 반복자 어댑터의 개념과 사용법
- 범위 라이브러리의 강력한 기능: 범위, 범위 기반 알고리즘, 프로젝션, 뷰, 팩토리
표준 반복자
- 필요
- 복제 생성자, 복제 대입 연산자, 소멸자, lvalue값은 반드시 swap을 지원해야 한다.
- 반복자의 기능은 컨테이너마다 다르다.
- 입력, 출력, 정방향, 양방향, 임의 접근(랜덤 액세스), 연속 등의 여섯 가지로 분류 가능.
- 표 참고.
- 기존에는 잘못된 반복자를 사용해도 에러를 알아보기 힘들었다.
- C++20부터 추가된 범위 라이브러리는 Concept을 썻기 때문에 에러를 보기 쉽다.
Container Iterator
- const 반복자를 리턴하는 cbegin()과 cend() 메서드
- 역방향 반복자를 리턴하는 rbegin()과 rend() 메서드
- const 역방향 반복자를 리턴하는 crbegin()과 crend() 메서드

- 맴버 함수보다는 비 맴버 함수를 사용하는 것이 좋다.
half-open range