STL 컨테이너 지도

컨테이너 분류

STL은 컨테이너, 알고리즘, 반복자를 분리합니다. 어떤 컨테이너를 고르느냐가 반복자 범위와 알고리즘 성능의 출발점입니다.

Container데이터를 저장하고 관리하는 객체
Iterator컨테이너 요소를 알고리즘에 연결
Algorithm정렬, 검색, 복사 같은 일반 함수
Sequencevector, deque, list

삽입 순서가 중요하고 앞뒤 또는 위치 기반 처리가 필요할 때 씁니다.

Orderedset, map

키가 정렬되어야 하고 검색, 삽입, 삭제를 균형 있게 처리합니다.

Unorderedunordered_map

정렬보다 평균 빠른 키 검색이 중요할 때 해시 기반으로 선택합니다.

Adapterstack, queue

기존 컨테이너를 감싸 push, pop, top처럼 허용된 행동만 노출합니다.

기본은 vector

연속 메모리와 캐시 효율이 좋아 대부분의 첫 선택입니다.

키 검색은 map 계열

정렬 필요 여부에 따라 ordered와 unordered를 나눕니다.

알고리즘 호환성 확인

컨테이너별 반복자 범주가 지원 연산을 제한합니다.