C++ · STL

STL 알고리즘과 반복자 연결 지도

컨테이너는 데이터를 보관하고, 반복자는 범위를 제공하며, 알고리즘은 범위 위에서 작업을 수행합니다.

알고리즘 적용 구조

algorithm

Container

원소를 소유하지만 알고리즘 로직은 갖지 않습니다.

Iterator Range

begin/end로 처리 구간을 지정합니다.

find/sort

범위에 대해 탐색과 정렬 작업을 수행합니다.

transform

각 원소를 새 값으로 변환합니다.

Predicate

비교나 필터 조건을 외부에서 주입합니다.

container begin/end algorithm predicate result

정리

STL의 힘은 컨테이너와 알고리즘을 반복자로 느슨하게 연결해 같은 알고리즘을 여러 자료구조에 쓰게 하는 데 있습니다.