반복자 범주가 지원하는 연산을 결정합니다. 그래서 어떤 알고리즘이 어떤 컨테이너에 가능한지 반복자 범주를 보면 알 수 있습니다.
입력 스트림처럼 앞으로 가며 값을 읽는 데 적합합니다.
출력 스트림처럼 값을 순서대로 기록합니다.
forward_list처럼 앞으로만 이동합니다.
list, map, set처럼 앞뒤
원소로만 이동하며 ++와 --를 지원합니다.
vector, deque처럼 it + n,
거리 계산, 순서 비교로 위치를 바로 계산합니다.
std::sort는 임의 접근 필요
list에는 멤버 함수 sort()를 사용합니다.
[begin, end) 형태라 end는 실제 요소가 아닙니다.
문법은 간단하지만 내부적으로 begin/end를 사용합니다.