Iterator

Iterator의 정의

Iterator Pattern

STL Container

코드와 함께 이해하기

아래 설명에 활용되는 자료

libstdc++ 의 iterator의 구조

: iterator 를 끝까지 파고 들어가면 다음과 같은 구조만 덩그라니 있다.

template <class _Category, class _Tp, class _Distance = ptrdiff_t,
          class _Pointer = _Tp*, class _Reference = _Tp&>
struct iterator {
  typedef _Category  iterator_category;
  typedef _Tp        value_type;
  typedef _Distance  difference_type;
  typedef _Pointer   pointer;
  typedef _Reference reference;
};