c++ - lambda 中的 noexcept 在 vs2012 中如何工作?

标签 c++ c++11 visual-studio-2012 lambda noexcept

尝试编译示例时:

https://learn.microsoft.com/en-us/cpp/cpp/lambda-expressions-in-cpp?view=vs-2019#exception-specification

使用Visual Studio 2012

[]() noexcept { throw 5; }();

我遇到了以下错误:

expected a '{' introducing a lambda body

最佳答案

noexcept已在中介绍,但是 MSVS2015 onwards只有(不幸的是)一个人可以使用此功能。也就是说,您需要升级到 MSVS2015 并设置编译器标志 C++11 或 C++14 才能编译此代码。

关于c++ - lambda 中的 noexcept 在 vs2012 中如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58005110/

相关文章:

c++ - 检查原始文件 C++ 的输出

c++ - 我可以将 std::move 与不提供 move 构造函数的类一起使用吗?

c++ - 使用 make_tuple 进行比较

c++ - 错误 C2270 : Modifiers not allowed on nonmember functions

visual-studio - 缺少 “Deploy” - 按钮 Visual Studio 2012

c++ - 如何为 Android 编译我自己的 C++ 库?

C++ vector 构造函数和赋值问题

c++ - 编译纯 C 和 C++

c++ - 表达式不是积分常量 clang libc++ threading

c++ - VS2012 调试中 SFML 变量周围的损坏堆栈