c++ - 函数在 C++17 中变成 noexcept?

标签 c++ language-lawyer c++17 noexcept exception-specification

根据 this answer ,异常规范将成为 C++17 中函数类型的一部分。这是否意味着许多函数的异常规范也会发生变化,例如C 兼容性 header 中的函数获得 noexcept 规范? 在 C++17 中,哪些标准函数的异常规范将更改为 noexcept

编辑显然P0488R0 , 2016-10-19 国家机构对标准工作草案的评论,包括提议的更改以标记几个 C 兼容性函数 noexcept(参见 US 172-178)。我想我们将不得不等待 WG21 对此使用react。

最佳答案

C++17 对 noexcept 的更改允许函数指针具有 noexcept 类型。

C++17 对 noexcept 的更改与标准库中标记为 noexcept 的函数无关。

两者都不依赖于另一个。

我知道 C++17 中没有更改标记 C 库中的每个函数 noexcept

关于c++ - 函数在 C++17 中变成 noexcept?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40716574/

相关文章:

c++ - 为左值和右值实现 C++ range-for 包装器

c++ - 正确使用模板将函数传递给线程池

c++ - 使用已定义的结构作为 union 的匿名成员

c++ - 如何有选择地启用或禁用项目中整个(外部项目)目录的 -Werror 参数?

c++ - std::span 默认构造函数的当前标准规范在 "Extent <= 0"上是否正确?

c++ - 将默认赋值运算符声明为 constexpr : which compiler is right?

c++ - 对于 C++14 中不确定值和未定义行为的使用,C++ 标准是否发生了变化?

c++ - 如何初始化 std::set 比较器?

c++ - 在 OpenGL 中缩放投影矩阵时出现意外行为

c++ - 使用转换运算符 cout 一个类对象