C++11
28 Jun 2013Lambda表达式:匿名函数的实现。
[] // 变量参考,用于闭包
() // 函数参数列表
{} // 函数体
() // 函数调用,如果函数有参数,那应该是在些传入
[]() { std::cout << "Hello Lambda!!" << std::endl; }();
// 一个简单的闭包例子
int num = 10;
auto func = [&num]() { num+= 100; std::cout << "num:" << num << std::endl; };
std::cout << "num:" << num << std::endl; // 输出10
func(); // 输出110
std::cout << "num:" << num << std::endl; // 输出110,由于num是以引用的方式传入的,所以会修改