一个软件首先要规定能处理的数据类型, 其次要实现三项最基本的功能——引用管理、内存管理和异常管理。在 OCC 中,这三项功能分别对应基础类中的句柄、内存管理器和异常类。
1 异常类
1. 1 异常类的定义
异常处理机制实现了正常程序逻辑与错误处理的分离, 提高了程序的可阅读性和执行效率。为了转移程序运行的控制流,异常处理的模式通常有无条件转移模式、 重试模式、 恢复模式和终止模式[5]。 与 C++一样, OCC 采用的是终止模式。
为了实现这种异常处理机制, OCC 提供了一套异常类。所有异常类都是基于它们的根类——Failure 类的。异常类描述了函数运行期间可能发生的异常情况。发生异常时,程序将不能正常运行。对这种情况的响应被称为异常处理。
1. 2 异常类的使用
OCC 使用异常的语法与 C++使用异常的语法相似。要产生一个确定类型的
异常,需用到相应异常类的 Raise()方法,如例 3.10 所示。
例 3.10: