c++ - 高级 C++ 多括号

标签 c++ lambda

<分区>

我正在查看示例程序代码并发现这一行:

auto prerequisite = task<void>([](){});

那些组合括号是什么意思 ([](){})

我是一名 cpp 程序员,但不知道编写此 Microsoft 示例的 advance cpp (c11+)。谷歌搜索没有帮助,我不知道那些运营商的名字。

最佳答案

[](){} 是一个 lambda expression这会创建一个具有非零大小且不执行任何操作的函数对象。

这可能是为了避免检查 prerequisite 是否有效/是否存在——它始终有效,但可能什么都不做。

关于c++ - 高级 C++ 多括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54458657/

相关文章:

c++ - GNU readline 空格引用

c++ - STL 设置自定义排序

具有自定义格式的 C# 通用 DateTime.ToString()

java - Eclipselink 忽略带有 lambda 表达式的实体类

c# - 如何使用方法调用生成已编译的 lambda?

javascript - 访问我们传递给另一个对象的函数内的注入(inject)依赖项

c++ - 从具有自定义类型的 C++ 中的 std::map 获取值

c++ - 虚函数中的类转换 C++

c++ - 急切加载整个模型以估计 Tensorflow Serving 的内存消耗

c++ - 如何使用 C++ lambda 函数创建 v8::FunctionTemplate?