lambda表达式
lambda 表达式
基本语法
1
2
3
4
5
auto 函数名[可为匿名] =
[使用外界的参数, &代表引用传递](传入的参数) (可选项)(mutable[代表值传递时是否可写])() ->(返回类型) {
//函数体内容
};lambda 为创建匿名函数,需要用名字接收时,使用auto 关键字创建对象
需要使用 lambda 对象类型,使用**decltype(**lamabda 对象名)
可以省略返回类型,函数体内直接 return 返回值,由编译器自动推导
使用场景
临时想到需要创建函数时
需要临时重载小括号之类作为参数时
返回值类型
lambda + auto = 随时构建泛型函数
在 C++14 下, lambda 支持使用 auto 自动推导参数, 那么也就可以使构造的 lambda 表达式具有泛型的能力
1 |
|