[C++] 람다 표현식 lambda expression
람다 표현식 lambda expression• C++11 도입 • 익명의 함수(객체) 생성 • 함수 주소가 필요한 위치에 함수 구현 자체 표기 • auto 변수에 함수처럼 사용 • 특정 상황에서 일반 함수보다 빠르다. • 지역 변수 캡처 (capture local variable)[예제] 람다 표현식 적용 내림 차순 정렬할 때 sort 함수에 cmp 함수를 인자로 주었다.#include // 내림 차순bool cmp(int a, int b) { return a > b; } int main(){ int x[5] = { 1, 3, 5, 2, 4 }; std::sort(x, x + 5, cmp); for (auto v : x) { printf("%d ", v); // 5, 4, 3, 2, 1 }} 📌 ..
2025. 1. 25.
[C++] Lambda expression 지역 변수 캡처
람다표현식 지역 변수 캡처capture local variable 점수 배열에서 70점 이상 filter 한다고 생각해보자.#include void foo(int n){ if (n >= 70) { printf("%d ", n); }}int main(){ int score[] = { 90, 30, 60, 70, 20, 10 }; std::for_each(score, score + 6, foo);} 람다 표현식으로 간결하게 표현할 수 있다.#include int main(){ int score[] = { 90, 30, 60, 70, 20, 10 }; std::for_each(score, score + 6, [](int n) { if (n >= 70) printf("%d ", n); });} 📌 [..
2025. 1. 18.