C++2.0

C++中的Lambda表达式

2019-03-17  本文已影响13人  CurryCoder

1.Lambda函数与表达式

    [capture](parameters) mutable ->return-type{statement}
例如:
    [](int a, int b) -> int { return a + b; };
   // 定义一个简单的lambda表达式
    auto basicLamda = [] {cout << "hello world!" << endl; };
    basicLamda();  // 调用
    // 如果需要参数,那么就要像函数那样,放在圆括号里面,如果有返回值,返回类型要放在->后面,即拖尾返回类型
    // 当然你也可以忽略返回类型,lambda会帮你自动推断出返回类型
    auto add = [](int a, int b) -> int {return a + b; };
    int result = add(4, 5);
    cout << "result = " << result << endl;
    // 自动推断出返回类型
    auto multiply = [](int a, int b) {return a * b; };
    int result1 = multiply(5, 6);
    cout << "result1 = " << result1 << endl;
上一篇下一篇

猜你喜欢

热点阅读