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
此外,還可以創建用戶定義的異常,在接下來的章節中學習。
上一篇:
C++字串
下一篇:
C++ try/catch語句