1、综述

  lambda表达式是一个匿名函数,它可以在函数内部定义,编译器会将lambda表达式当做一个函数对象。lambda表达式的形式为:[捕获列表] (参数列表) -> 返回类型{ 函数体 },其中“捕获列表”是表达式所在函数中定义的局部变量的列表,可以为空,而且lambda必须使用尾置返回来指定函数返回类型,eg:

C++11--lambda表达式
int main()
{
    function<int(int)> func = [](int x)->int { return x * x; };
    cout << func(5) << endl;

    auto Func = [](int x)->int { return x * x; };
    cout << Func(10) << endl;

    int(*FuncPtr)(int) = Func;
    cout << (*FuncPtr)(20) << endl;

    return 0;
}
View Code

相关文章: