• 람다식
f(x + y)를 (x + y) -> x + y 형태로 표현한다
- x+y를 출력하는 람다 메서드에 2+3한 값을 넣어서 출력
[](int x, int y) {cout << x + y; }(2,3);
-람다 메서드를 auto 타입으로 변수로 만들어두고 재활용해서 사용하는 코드, 이 패턴을 잘 알아두자
auto sum = [](int x, int y) {cout << x + y << '\n'; };
sum(1, 2);
sum(5, 15);
-람다 메서드에 외부 변수 값을 넣어서 계산하는 코드
double pi = 3.14;
auto calc = [pi](int r) -> double { return pi * r * r; };
- 참조 형으로 넘겨준 인자에 값을 람다식 안에서 갱신하는 코드
double pi = 3.14, res = 0;
auto calc = [&pi, &res](int r) -> double { return res = pi * r * r; };
cout << calc(3) << '\n';
cout << res << '\n';
- 참조 형으로 넘겨준 값에 계산한 식의 값을 저장하는 코드
vector<int> tmp = { 1, 2, 3, 4, 5 };
int res = 0;
for_each(tmp.begin(), tmp.end(), [&res](int a) {cout << a << " "; cout << "\n"; res += a; });
cout << res << '\n';
'대외활동 > 시스템프로그래밍' 카테고리의 다른 글
예외 처리 (0) | 2024.07.31 |
---|---|
c++ 입출력 시스템 (0) | 2024.07.30 |
템플릿 & STL (0) | 2024.07.29 |
상속, 오버라이딩, 추상화 (0) | 2024.07.29 |
메서드 오버로딩 & 디폴트 매개변수 & static & 프렌드 & 연산자 오버로딩 (0) | 2024.07.26 |