複製鏈接
請複製以下鏈接發送給好友

CException

鎖定
CException是Microsoft基本類庫中處理各種異常的基礎庫。
中文名
CException
隸    屬
基礎庫
來    源
Microsoft基本類
內存不夠
CMemoryException
其派生庫及描述如下:
內存不夠
請求不支持的操作
文檔指定異常
文件指定異常
CResourceException
Windows資源未找到或不可創建
OLE異常
數據庫異常(即基於開放數據庫連接的MFC數據庫類出現異常)
OLE發送(自動)異常
CUserException
資源無法找到
數據訪問對象異常(即DAO類出現異常)
Internet異常(即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對象
GetErrorMessage
獲取異常描述信息
ReportError
在消息框中向用户報告一個錯誤信息