Java中的最好的一件事情是彻底的使用异常并依存异常。使用异常你可以在句柄操作错误的时候获得一个安全可靠的方法。 不幸地是,大多数的C++类库中,异常不是类的基本部分。为了让C++的异常处理和Java的水平相当,你需要在你的应用程序或者库中小心的设计异常处理。 首先,你需要在你的设计文档中详细的定义出错处理。更多时候,出错处理是一个事后产生的想法。在你开始编写代码之前,你需要为每个函数制定异常规格说明。 一旦你知道你的函数是什么异常,你需要定义一个层次。注意,和Java不一样的是,任何在throw语句中都可以被thrown。但是使用基本的数据类型不允许任何分层次的扑捉结构,并且,我反对使用它们。 如果你使用一个类库,这个类库有自己的异常层次,你可以从那里开始。但是,通常你希望添加你自己的异常到层次中,如果你使用一个标准C++编译器,你可以从标准库中开始异常。 记住你通常catch一个异常并throw另外一个,因此,异常连锁是有益的。添加异常连锁和添加一个构造函数一样简单。它将使用异常的基本类。 混合异常和C的类型返回值错误是一个好的办法。如果可以的话,提炼C错误报告函数和你程序的其余部分的接口 C++异常规格有一个普通的语法: //Declaration 注意,声明和定义必须有同样的异常规格。不幸地是,C++异常规格和Java的异常规格不一样。C++版本的进程中的std::unexpected异常代替了Java中的编译错误。同样的C++异常规格默认throw任何异常。 |
温馨提示:喜欢本站的话,请收藏一下本站!