728x90
오늘은 C++의 STL의 장단점을 공부하도록 하겠습니다.
STL이란?
STL(Standard Template Library)는 C++의 표준 라이브러리를 지원합니다.
이 라이브러리를 이용하여 특정 기능을 작성하지 않고 제공되는 함수를 통해 손쉽게 기능을 구현할 수 있습니다.
STL은 사전적으로 표준 템플릿 라이브러리이며 C++의 템플릿을 사용하고 있으므로 하나의 코드로 여러 결과를 보여줍니다. ex) vector<int> v 벡터 자료구조에 int형으로 선언
STL의 기본 개념은 이미 구현되어 있는 공통적인 기능을 쉽게 사용하는 것 입니다.
STL 장/단점?
그럼 이러한 STL의 장단점은 무엇일가요?
장점 | 단점 |
일반화를 지원합니다. 하나의 단일 알고리즘으로 여러 개의 컨테이너에 대해 동일한 작업이 가능합니다. | 템플릿 기반으로 함수와 클래스가 매번 구체화 되어 소스가 커집니다. |
컴파일 타임의 매커니즘을 지원하므로 실행 시 효율의 저하가 없습니다. | 가독성이 매우 떨어집니다. |
객체 지향적이지 않습니다. 함수는 모두 전역 변수를 사용하고, 상속을 거의 하지 않습니다. | 예외 처리가 어렵습니다. |
성능이 중요하므로 가상 함수와 같은 저성능 매커니즘을 사용하지 않습니다. | |
표준이므로 이식성이 매우 좋습니다. | |
소스 공개로 확장성이 좋습니다. |
Reference
'개발자 면접 공부 > C-C++' 카테고리의 다른 글
const int* p 와 int * const p의 차이점 (2) | 2023.05.07 |
---|---|
C++ 템플릿(함수 템플릿) (0) | 2022.09.22 |
C++의 인터페이스(Interface) (0) | 2022.09.17 |
가상상속 (0) | 2022.09.17 |
C++ 객체지향 언어 4가지 특징 (0) | 2022.09.01 |