C ++:这段代码有什么作用? FOO([](){巴();});

时间:2016-09-26 19:16:57

标签: c++ syntax brackets curly-braces braces

我刚刚发现了一条我无法正常查看Google的内容。 它基本上看起来像foo([](){bar();})。 这是我实际发现的:

ArduinoOTA.onStart([]() {
    Serial.println("Start");
});

有人可以向我解释这种语法,或者至少告诉我我在这里看到的是什么吗?

2 个答案:

答案 0 :(得分:1)

它只调用一些带有lambda函数foo的函数[]() { bar(); }作为参数。

答案 1 :(得分:1)

您正在寻找lambda expressions

在这种情况下,它似乎正在注册要在开始时执行的动作。