CException

王朝百科·作者佚名  2010-08-12  
宽屏版  字体: |||超大  

CException是Microsoft基本类库中处理各种异常的基础库。其派生库及描述如下:CMemoryException内存不够CNotSupportedException请求不支持的操作CArchiveException文档指定异常CFileException文件指定异常CResourceExceptionWindows资源未找到或不可创建COleExceptionOLE异常CDBException数据库异常(即基于开放数据库连接的MFC数据库类出现异常)COleDispatchExceptionOLE发送(自动)异常CUserException资源无法找到CDaoException数据访问对象异常(即DAO类出现异常)CInternetExceptionInternet异常(即Internet类出现异常)

这些异常经常使用THROW,THROW_LAST,TRY,CATCH,AND_CATCH,END_CATCH宏。要了解有关异常的更多信息,请参阅联机文档“Visual C++程序员指南”中的“异常”或“异常处理”。

要获取指定的异常,可使用相对应的派生库。要获取所有异常的类型,可调用CException,然后用CObject::IsKindOf来区分CException派生类。注意CObject::IsKindOf仅对由IMPLEMENT-DANAMIC宏定义的类有效,以便得到动态类型检查带来的好处。任何CException派生类都应由IMPLEMENTDANAMIC宏创建。

可以调用GetErrorMessage或ReportError来向用户报告异常的详细情况。这两个派生类适用于任何CException派生类。

如果一个宏获取异常,CException对象会被自动删除,无须用户删除。

如果Catch关键字得到异常,则不会自动删除。请参阅联机文档“Visual C++程序员指南”中的“异常”,以了解有关何时删除一个异常对象的更多信息。

CException是一个抽象基类,不可构造一个CException对象。如果想创建自己的CException类型,可参照上述派生类。注意派生类也使用了IMPLEMENTDANAMIC。

#include <afx.h>

CException类的成员

操作CException构造一个CException对象Delete删除一个CException对象GetErrorMessage获取异常描述信息ReportError在消息框中向用户报告一个错误信息

 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝百科 版权所有