lambda 表达式(匿名函数)的定义:
[capture list] (parameter list) -> reurn type
{
function body
}
- capture list:捕获列表,指 lambda 表达式所在函数中定义的局部变量的列表,通常为空,但如果函数体中用到了 lambda 表达式所在函数的局部变量,必须捕获该变量,即将此变量写在捕获列表中。捕获方式分为:引用捕获方式 [&]、值捕获方式 [=]。
- return type、parameter list、function body:分别表示返回值类型、参数列表、函数体,和普通函数一样。
lambda 表达式常搭配排序算法使用。
sort(arr.begin(), arr.end(), [](int a, int b) { return a > b; }); // 降序排序
本文详细介绍了C++中Lambda表达式的定义与使用方法,包括捕获列表、返回类型、参数列表及函数体等概念,并通过一个排序示例展示了其在实际编程中的应用。
3692

被折叠的 条评论
为什么被折叠?



