Skip to main content

CXX5609

当函数的声明包含一个异常规范时,该函数只能抛出指定类型的异常

依据

如果函数的声明包含一个异常规范,且该函数抛出了一个规范中不包含的类型的异常,那么就会调用函数 unexpected() 。这个函数的行为可以在项目中被重写,但是默认情况下会导致抛出一个 std::bad_exception 的异常。如果 std::bad_exception 没有被列在异常规范中,那么 terminate() 将被调用,导致程序以一种 实现定义 的方式终止。

登录查看完整文章