常用形式
[](int x, int y) -> int { int z = x + y; return z; } //这样显示指定返回类型:[](int x, int y) { return x + y; } // 隐式返回类型[](int& x) { ++x; } // 没有return语句 -> lambda 函数的返回类型是'void'[]() { ++global_x; } // 没有参数,仅访问某个全局变量[]{ ++global_x; } // 与上一个相同,省略了()
小例子
#include <iostream>int main() {// lambda表达式auto multiply = [](int a, int b) -> int { return a * b; };// 匿名函数调用auto result = multiply(2, 4);std::cout << result << std::endl;return 0;}
参考
一些进一步用法https://www.cnblogs.com/pzhfei/archive/2013/01/14/lambda_expression.html
