L'expression Lambda est une fonction anonyme avec la syntaxe suivante : [capture list] (liste de paramètres) -> type de retour {function body} La liste de capture spécifie les variables à capturer à partir de l'environnement, la liste de paramètres spécifie la liste de paramètres , et le type de retour spécifie le type de retour, le corps de la fonction définit le corps de la fonction. Les variables de capture sont capturées par référence et le type peut être déduit de la liste de capture, de la liste des paramètres et du type de retour.
Une expression Lambda est une fonction anonyme qui vous permet de créer un objet appelable sans définir de fonction explicite. La syntaxe est la suivante :
[capture list] (parameter list) -> return type { function body }
Où :
Voici quelques exemples :
// Capture 变量 x 并返回 x 的平方 auto square = [](int x) { return x * x; }; // 捕获变量 y 并返回 y 的立方 auto cube = [&](int y) { return y * y * y; };
Remarque :
Ce qui suit est un exemple simple utilisant l'expression lambda :
#include <iostream> #include <vector> using namespace std; int main() { // 使用 lambda 表达式对向量中的每个元素平方 vector<int> numbers = {1, 2, 3, 4, 5}; for_each(numbers.begin(), numbers.end(), [](int& num) { num *= num; }); // 使用 lambda 表达式对向量进行排序 sort(numbers.begin(), numbers.end(), [](int a, int b) { return a > b; }); // 打印排序后的向量 for (int num : numbers) { cout << num << " "; } cout << endl; return 0; }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!