STL은 표준 템플릿 라이브러리로서 컨테이너와 알고리즘으로 구성되어 있다.STL 컨테이너는 자료구조의 구현체이며 템플릿 기반이므로 어떠한 타입의 항목도 담을 수 있지만 호모 지니어스하여 하나의 컨테이너는 하나의 타입만 담을 수 있다. 각 컨테이너는 작업에 따라 성능이
Chapter1. 순차 컨테이너 순차 컨테이너는 항목들이 순서를 갖는 컨테이너이다. vector는 동적 배열을, list는 양방향 연결 리스트를, deque은 양방향 큐를 구현한다. 1. vector vector는 헤더에 정의되어 있는 동적배열 자료 구조이며 다음
STL의 제너릭 정렬 알고리즘은 순차 컨테이너와 배열에만 적용할 수 있다. 순차 컨테이너 중 list와 forward_list는 컨테이너의 내부 구조에 최적화된 더 효율적인 정렬 기능을 메서드로 제공하기 때문에 이 제너릭 정렬 알고리즘을 적용할 필요가 없다. 결과적으로
컨테이너 어댑터란 다른 순차 컨테이너를 바탕으로 하여 인터페이스를 다르게 래핑한 것을 말한다. 보다 단순화된 인터페이스를 제공하는 것이 목적이기 때문에 이들은 복수 항목을 한 번에 삽입, 삭제하는 메서드나 항목 순회를 위한 반복자를 지원하지 않는다.표준에서 제공되는 컨
항목열 간 비교에는 equal 함수, mismatch 함수, lexicographical_compare 함수 중 하나를 선택할 수 있다. equal과 mismatch 함수의 경우 첫 번째 컨테이너에 대해서는 두개의 반복자를 필요로하며 두 번째 컨테이너에 대해서는 끝 반
연관 컨테이너는 Key와 Value를 연관시켜 데이터를 관리한다. 이들은 데이터의 정렬상태를 항상 유지하기 때문에 삽입/삭제/룩업 성능이 모두 동일하게 로그시간 복잡도를 갖는다. 내부적으로 균형잡힌 이진 탐색 트리를 구현하고 있으나 트리는 직접 접근할 수 없다. 표준
STL 컨테이너의 항목열을 대상으로 특정 항목을 찾는 함수들 이다. 모든 알고리즘은 operator ==또는 operator <의 디폴트 연산자를 사용하는데, 필요하다면 비교 콜백 함수를 직접 전달 할 수 있도록 오버로딩 되어있다.주어진 값과 같거나, 주어진 조건