Funcții
Funcții Lambda
O funcție lambda (C++11) este o funcție anonimă definită "pe loc". Utilă pentru algoritmi STL sau callback-uri rapide.
lambda.cpp
#include <algorithm>
#include <vector>
using namespace std;
int main() {
vector<int> v = {5, 2, 8, 1, 9, 3};
// Lambda ca comparator pentru sortare descrescătoare
sort(v.begin(), v.end(), [](int a, int b) {
return a > b;
});
for (int x : v) cout << x << " ";
// 9 8 5 3 2 1
return 0;
}Sintaxa lambda
// [captură](parametri) -> tip_retur { corp }
auto saluta = []() { cout << "Salut!" << endl; };
saluta(); // Salut!
auto aduna = [](int a, int b) { return a + b; };
cout << aduna(3, 4) << endl; // 7
// Captură de variabile din scope
int n = 10;
auto addN = [n](int x) { return x + n; };
cout << addN(5) << endl; // 15