性的最有效方法之一C语言实现出错处理的方法是.ppt

性的最有效方法之一C语言实现出错处理的方法是.ppt

第九章 异常处理 9.4.5 异常的重新抛出 如果运行错误抛出的异常对象虽然被直接调用环境 中的异常处理器捕获,但根据所获得错误信息在当前 运行环境中无法对异常进行恰当的处理,则需要将所 捕获的异常对象从当前的运行环境重新抛向高一层运 行环境,使产生异常的错误能在高一层运行环境中得 到恰当的处理或将异常对象继续重新抛出。注意,如 果在当前运行环境中没有捕获运行错误抛出的异常对 象,则重新抛出异常对象的操作是自动发生的。 实现重新抛出异常的方法是在捕获异常对象的异常 处理器分支中使用不带参数的 throw 语句。例如使用省 略号做参数捕获任意类型异常对象时,由于无法得到 有关异常的信息而将异常对象重新抛出: catch(…) { cout an unkown exception was thrown endl; throw; } 由于每个被抛出异常对象在未被处理之前是被保留 的,所以更高层次的运行环境的处理器总可以获得来 自这个异常对象的完整信息。 9.4.6 未捕获的异常 如果测试块 try 执行过程中抛出的异常对象在当前的 异常处理器没有被捕获,则异常对象将进入更高一层 的运行环境中。这种异常对象的抛出、捕获、处理过 程按照运行环境的调用关系逐层进行,直到在某个层 次的运行环境的异常处理器中捕获并恰当处理了异常 对象才停止,否则将一直进行到调用系统的特定

文档评论(0)

1亿VIP精品文档

相关文档