C++ STL(표준 템플릿 라이브러리)은 벡터, 목록, 대기열 및 스택과 같이 널리 사용되는 많은 알고리즘과 데이터 구조를 구현하는 템플릿과 함께 범용 클래스 및 함수를 제공하는 강력한 C++ 템플릿 클래스 세트입니다.
컨테이너 클래스, 알고리즘 및 반복자의 라이브러리입니다. 일반화된 라이브러리이므로 구성 요소가 매개변수화됩니다. 템플릿 클래스에 대한 실무 지식은 STL 작업을 위한 전제 조건입니다.
템플릿은 함수와 클래스가 제네릭 형식으로 작동할 수 있도록 하는 C++ 프로그래밍 언어의 기능입니다. 이를 통해 함수 또는 클래스는 각각에 대해 다시 작성하지 않고도 다양한 데이터 유형에서 작업할 수 있습니다.
C++ 표준 템플릿 라이브러리에는 다음과 같이 잘 구성된 세 가지 구성 요소가 있습니다. -
1 컨테이너
컨테이너는 특정 종류의 개체 컬렉션을 관리하는 데 사용됩니다. deque, list, vector, map 등과 같은 여러 유형의 컨테이너가 있습니다.
-
시퀀스 컨테이너 - 이러한 컨테이너는 순차적인 방식으로 액세스할 수 있는 데이터 구조를 구현합니다.
- 벡터
- 목록
- 데크
- 배열
- forward_list
-
컨테이너 어댑터 - 순차 컨테이너에 대해 다른 인터페이스를 제공합니다.
- 대기열
- 우선순위_대기열
- 스택
-
연관 컨테이너 - 빠르게 검색할 수 있는 정렬된 데이터 구조를 구현합니다(O(log n) 복잡성).
- 설정
- 다중 집합
- 지도
- 멀티맵
-
순서 없는 연관 컨테이너 - 이 컨테이너는 빠르게 검색할 수 있는 정렬되지 않은 데이터 구조를 구현합니다.
- 정렬되지 않은_세트
- 순서가 없는_다중 집합
- 순서 없는_지도
- 순서가 없는_멀티맵
2 알고리즘
알고리즘은 컨테이너에서 작동합니다. 컨테이너의 내용을 초기화, 정렬, 검색 및 변환하는 수단을 제공합니다.
알고리즘
- 정렬
- 검색 중
- 중요 STL 알고리즘
- 유용한 배열 알고리즘
- 파티션 작업
3개의 반복자
반복자는 개체 컬렉션의 요소를 단계별로 실행하는 데 사용됩니다. 이러한 컬렉션은 컨테이너 또는 컨테이너의 하위 집합일 수 있습니다.