C++ STL

Intro

  • STL

STL 이란?

  • 표준 C++ 라이브러리(Standard Template Library)

  • 프로그램에 필요한 자료구조와 알고리즘을 Template로 제공하는 라이브러리

STL 구성요소

1 - Container

객체를 저장하는 객체, 자료구조 클래스 템플릿으로 구현되어있다.

컨테이너의 종류

1) Sequence Container

자료를 입력한 순서대로 저장한다. (검색, 삽입, 삭제가 느리다)

종류 : Array(C++ 11), Vector, List, Deque

2) Associative Container

트리 구조로 이루어져 있다. (검색, 삽입, 삭제가 빠르다)

종류 : Set, Multiset, Map, Multimap

3) Container Adaptor

시퀀스 컨테이너를 변형하여 사용한다.

종류 : Stack, Queue, Priority Queue

2 - Iterator

포인터와 비슷한 개념으로 컨테이너의 원소를 가리키고, 원소에 접근하여 다음 원소를 가리키는 기능(반복자)

3 - Algorithm

정렬, 삭제 ,검색 , 연산등을 해결하는 방법을 제공하는 함수 템플릿

4 - Funtion Object

함수처럼 동작하는 객체로 operator() 연산자를 오버로딩 한 객체

컨테이너와 알고리즘 등에 클라이언트 정책을 반영하게 한다.

5 - Allocator

컨테이너의 메모리 할당 정책을 캡슐화한 클래스 객체로 모든 컨테이너는 자신만의 할당기를 가지고 있다.

참고 자료

https://codingplus.tistory.com/13

https://blockdmask.tistory.com/67

태그: ,

카테고리:

업데이트:

댓글남기기