编程|编程语言之C ++中的异常处理( 二 )


7.与Java不同 , 在C ++中 , 所有异常均未选中 。 编译器不会检查是否捕获到异常(有关详细信息 , 请参见此内容) 。 例如 , 在C ++中 , 没有必要在函数声明中指定所有未捕获的异常 。 尽管建议这样做 。 例如 , 以下程序可以正常编译 , 但理想情况下fun()的签名应列出未检查的异常 。
输出:
从fun()捕获异常

编写上述代码的更好方法:
输出:
从fun()捕获异常

8.在C ++中 , try-catch块可以嵌套 。 另外 , 可以使用“ throw; throw; throw”来重新抛出异常 。 ”
一个函数还可以使用相同的“ throw; throw”来重新抛出一个函数 。 ” 。 一个函数可以处理一部分 , 并且可以要求调用方处理剩余部分 。
9.引发异常时 , 在将控件转移到catch块之前 , 将破坏在try块内部创建的所有对象 。
【编程|编程语言之C ++中的异常处理】10.您可以尝试C ++中的异常处理测验 。