什么是Lambda表达式
lambda表达式本质上是匿名函数,它以一种简洁的形式定义了一个临时使用的函数
Lambda表达式语法规则
[CatchList](ParamList) mutable -> ReturnType {
//Statements...
return value;
}
ParamList、ReturnType和普通函数是一样的,大家应该不难理解
CatchList表示对外部参数的使用
CatchList为空,表示不能访问外部变量
CatchList为=,表示可以访问全部外部变量,按值传递
CatchList为&,表示可以访问全部外部变量,按引用传递
CatchList通过逗号隔开,可以手动指定访问哪些外部变量,带&为引用,不带则按值复制
mutable表示可以修改外部变量的值,默认不可以修改外部变量,只能访问
Lambda表达式使用示例
int main() {
auto add = [](int x, int y) -> int {
return x + y;
};
auto sum = add(100, 200);
cout
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?