C++錯誤處理
C++中的異常處理是處理運行時錯誤的過程。 我們執行異常處理,以便即使在運行時出現錯誤後也能保持正常的應用程序流轉。
在C++中,異常是在運行時拋出的事件或對象。 所有異常都派生自std::exception
類。 它是一個可以處理的運行時錯誤。 如果我們不處理異常,它就會打印異常消息並終止程序。
異常處理的優點
異常處理保持應用程序的正常流轉。 在這種情況下,即使在異常之後仍執行代碼的其餘部分。
C++異常類
在C++中,標準異常在 exception
類中定義,我們可以在程序中(直接或繼承)使用它。 父子類層次結構的排列如下所示:
C++中的所有異常類都是從std::exception
類派生的。 下面來看看看C++常見異常類的列表。
異常
描述
std::exception
它是所有標準C++異常的異常和父類。
std::logic_failure
這是一個異常,可以通過讀取代碼來檢測。
std::runtime_error
這是一個異常,不能通過讀取代碼來檢測。
std::bad_exception
std::bad_cast
這個異常通常由dynamic_cast
拋出。
std::bad_typeid
這個異常通常由typeid
拋出。
std::bad_alloc
這個異常通常由new
拋出。
C++異常處理關鍵字
在C++中,我們使用3
個關鍵字來執行異常處理:
- try
- catch
- throw
此外,還可以創建用戶定義的異常,在接下來的章節中學習。