[STL] 컨테이너란?



컨테이너

컨테이너란 같은 타입을 저장,관리할 목적으로 만들어진 클래스다. 컨테이너는 두가지로 나뉜다.

표준 시퀀스 컨테이너(standard sequence container)

컨테이너 원소가 자신만의 삽입 위치(순서)를 가지는 컨테이너 (vector,deque,list : 선형적)

표준 연관 컨테이너(standard associative container)

저장 원소가 삽입 순서와 다르게 특정 정렬 기준에 의해 자동 정렬되는 컨테이너 (map,muiltimap,set,multiset : 비선형적)

시퀀스 컨테이너와 연관 컨테이너의 일반적인 구조는 다음과 같다.

시퀀스 컨테이너

image

연관 컨테이너

image

그리고 컨테이너는 하나의 연속된 메모리에 존재하냐에 따라 배열 기반 컨테이너와 노드 기반 컨테이너로 나뉜다.

배열 기반 컨테이너

배열 기반 컨테이너에는 vectordeque가 있다. 배열기반 컨테이너는 하나의 연속된 메모리 공간에 데이터들이 존재한다.

노드 기반 컨테이너

노드 기반 컨테이너에는 list,set,multiset,map,multimap이 있다. 노드 기반 컨테이너는 데이터 하나가 하나의 메모리에 존재한다.




© 2022. by KSC

Powered by sora