2.5 | list<T> 컨테이너 사용하기
list 헤더에 정의된 list<T> 컨테이너 템플릿은 타입 T 객체의 이중 연결 리스트를 구현한 것이다. list는 vector나 deque 컨테이너와 비교하면 순차열의 어느 위치라도 상수 시간에 원소 삽입과 삭제를 할 수 있다는 장점이 있다. 이 장점 때문에 vector나 deque대신 list 컨테이너를 사용하려는 주된 동기가 된다. 하지만 순차열에서 특정 위치에 있는 원소에 바로 접근할 수 없다는 단점도 있다. 즉, 원소들에 인덱스를 사용할 수 없다. list 내부에 있는 원소에 접근하려면 한 원소에서 옆 원소로 하나씩 이동하며, 즉 처음부터 마지막 원소까지 원소들을 순회해야 한다. 그림 2-6을 보면 list 컨테이너가 원소들을 어떻게 저장하는지 알 수 있다.

▲ 그림 2-6 list<T> 컨테이너