Lambda表达式
C++11中的Lambda表达式用于定义并创建匿名的函数对象。
基本构成:[ 函数对象参数 ](操作符重载函数参数)mutable或exception ->返回值{函数体}
参数
[ ] 标识一个**Lambda的开始**,这部分必须存在,**不能省略**。
空,没有任何函数对象参数
=,**值传递方式**(作用范围:所有可见的局部变量以及所在类的this)
&,**引用传递方式**(作用范围:所有可见的局部变量以及所在类的this)
this,函数体内可以可以使用**Lambda所在类**中的成员变量
a,把a按值进行传递(默认为const不可修改,可添加mutable修饰符修改)
&b,把b按引用进行传递
&,a,b,除a和b进行值传递,其他参数按引用进行传递
操作符重载函数参数:
标识重载的()操作符的参数,没有参数