개발자 면접 공부/C-C++

C++ STL 장단점

chogyujin 2022. 9. 21. 21:15
728x90

오늘은 C++의 STL의 장단점을 공부하도록 하겠습니다.


STL이란?

STL(Standard Template Library)는 C++의 표준 라이브러리를 지원합니다.
이 라이브러리를 이용하여 특정 기능을 작성하지 않고 제공되는 함수를 통해 손쉽게 기능을 구현할 수 있습니다.

STL은 사전적으로 표준 템플릿 라이브러리이며 C++의 템플릿을 사용하고 있으므로 하나의 코드로 여러 결과를 보여줍니다. ex) vector<int> v 벡터 자료구조에 int형으로 선언

STL의 기본 개념은 이미 구현되어 있는 공통적인 기능을 쉽게 사용하는 것 입니다.


STL 장/단점?

그럼 이러한 STL의 장단점은 무엇일가요?

 

장점 단점
일반화를 지원합니다. 하나의 단일 알고리즘으로 여러 개의 컨테이너에 대해 동일한 작업이 가능합니다. 템플릿 기반으로 함수와 클래스가 매번 구체화 되어 소스가 커집니다.
컴파일 타임의 매커니즘을 지원하므로 실행 시 효율의 저하가 없습니다. 가독성이 매우 떨어집니다.
객체 지향적이지 않습니다. 함수는 모두 전역 변수를 사용하고, 상속을 거의 하지 않습니다. 예외 처리가 어렵습니다.
성능이 중요하므로 가상 함수와 같은 저성능 매커니즘을 사용하지 않습니다.  
표준이므로 이식성이 매우 좋습니다.  
소스 공개로 확장성이 좋습니다.  

Reference

https://siloam72761.tistory.com/entry/C-STL%EC%9D%98-%EA%B0%9C%EB%85%90-%EA%B5%AC%EC%84%B1%EC%9A%94%EC%86%8C-%ED%8A%B9%EC%A7%95-%EC%9E%A5%EB%8B%A8%EC%A0%90

 

[C++] STL의 개념, 구성요소, 특징, 장단점

1. STL(Standard Template Library)의 등장 C++은 표준 라이브러리를 가지고 있는다. 이를 이용해 직접 특정 기능을 작성하지 않고 제공되는 함수를 통해 손쉽게 기능을 구현할 수 있다. 그리고 1994년 7월에

siloam72761.tistory.com

 

'개발자 면접 공부 > 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