A. STL
1. STL 개요
a. STL이란
🌟 표준 C++ 라이브러리 (Standard Template Library)
프로그램에 필요한 자료구조와 알고리즘을 Template로 제공하는 라이브러리
프로그래머가 쉽고 효율적으로 흐로그램을 작성할 수 있게 도움
b. STL의 구성요소
1) 컨테이너 Container : 데이터를 저장하는 자료구조. 벡터, 리스트, 맵, 큐, 스택 등 제공
- 시퀀스 컨테이너 : 선형 자료구조
- 연관 컨테이너 : 비선형 자료구조
2) 반복자 Iterator : 컨테이너의 요소를 반복하는데 사용. 접근을 추상화 해 일관된 방법으로 처리
3) 알고리즘 Algorithm : 정렬, 검색, 변환 등 다양한 작업을 수행하는 함수를 제공. 컨테이너와 반복자를 대상으로 작동
4) Function Object
5) Container Adaptor
6) Allocator
c. STL의 특징
1) 제네릭 프로그래밍
템플릿을 이용하여 구현되어 있어, 데이터 타입에 독립적으로 사용
이는 코드의 재사용성을 높이고 일반적인 알고리즘 및 자료 구조를 제공함으로써 개발자의 생산성을 향상
2) 유연성과 확장성
다양한 컨테이너와 알고리즘, 사용자 정의 타입에 대한 확장성을 제공
이는 다양한 문제에 대해 적합한 자료 구조와 알고리즘을 선택할 수 있게 해줌
3) 성능과 효율성
알고리즘 및 자료 구조의 구현에 최적화되어 뛰어난 성능과 효율성을 제공
이는 빠른 실행속도와 메모리 사용량을 보장함
4) 표준화된 인터페이스
표준화된 인터페이스를 제공해 일관된 방식으로 다양한 기능을 사용
이는 가독성과 유지보수성을 높힘
5) 다양한 도구 제공
데이터 구조, 알고리즘, 반복자, 함수 객체 등 다양한 도구를 제공해 효율적으로 작업할 수 있도록 도움
출처 : https://blockdmask.tistory.com/67
+ chatGPT
[C++] STL 이란.
1) STL 이란표준 C++ 라이브러리 (Standard Template Library)프로그램에 필요한 자료구조와 알고리즘을 Template로 제공하는 라이브러리 2) STL 의 구성요소Container - 객체를 저장하는 객체, 자료구조 라고도
blockdmask.tistory.com
'프로그래밍 언어 > C++' 카테고리의 다른 글
[게임 프로그래머 입문 올인원] C++11 (Modern C++) 2 : range-based for(69강) (0) | 2024.02.22 |
---|---|
[게임 프로그래머 입문 올인원] C++11 (Modern C++) 1 : auto (68강) (0) | 2024.02.22 |
[게임 프로그래머 입문 올인원] 템플릿 문법 (52강) (0) | 2024.02.15 |
[게임 프로그래머 입문 올인원] 동적할당과 캐스팅 : 버그 유형과 디버깅 연습/답안 (43, 44강) (2) | 2023.10.05 |
[게임 프로그래머 입문 올인원] 동적할당과 캐스팅 : 전방 선언 (40강) (0) | 2023.09.15 |