lambda表达式:
这是C++11引入的一种新特性,它可以让您在需要定义函数对象的地方,直接编写一个匿名的、可以捕获上下文变量的函数体,非常适合用作回调函数、临时计算或定义小型函数对象。
lambda表达式与普通函数类似,也有参数列表、返回值类型和函数体,只是它的定义方式更简洁,并且可以在函数内部定义。
lambda表达式的语法:
lambda表达式的一般形式如下:
[capture] (parameters) mutable -> return-type { body }
其中:
[capture]
:捕获列表,表示lambda表达式可以捕获哪些上下文中的变量,以值或引用的方式。捕获列表可以为空,表示不捕获任何变量,也可以使用=
或&
表示