STL(Standard Template Library) 이란? STL이란 표준 템플릿 라이브러리(Standard Template Library)의 약자로써, C++에서 프로그래밍에 필요한 자료구조와 알고리즘을 Template의 형태로 제공하는 C++ 라이브러리이다. STL의 장단점 장점 일반화를 지원한다. 컴파일 타임 매커니즘을 이용하므로 실행 시 효율 저하가 적다. 사용자의 알고리즘을 적용시키는 등의 확장성이 우수하다. 소스코드의 길이가 대폭 감소된다. 단점 템플릿 기반이므로 함수, 클래스가 매번 구체화되어 코드가 비대해진다. 디버깅이 어렵다. STL의 구성 1. 컨테이너(Container) 자료를 저장하는 객체, 자료구조를 모아둔 집합이다. 순차 컨테이너 (Sequence Container) 자료를 ..
![[C++] 람다 표현식(Lambda Expression)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FblHJf7%2Fbtq4CCgEMe7%2FhJ0TLhRSqKuMuGRPP6X0t1%2Fimg.png)
람다 표현식(lambda expression) 이란? 람다 표현식(lambda expression)은 C++11 부터 지원하는 문법으로, 익명의 함수를 호출할 수 있는 기능을 지원한다. 알아둔다면 매우 편리한 기능이다. 람다 표현식의 기본형태 람다식은 위 그림과 같이 캡쳐, 인자, 반환 타입, 람다 본문 이렇게 네가지로 구성된다. [ ] ( ) -> typename { } 와 같은 형식이다. #inclㅕde #include using namespace std; void abssort(int* x, unsigned n) { sort(x, x + n, // 람다 시작 [](int a, int b) { return (abs(a) < abs(b)); } // 람다 끝 ); } 위의 코드와 같이 사용될 수 있다...