C++ 異常是一種處理意外事件的機制,透過 try 區塊擷取異常,使用 catch 區塊處理異常。首先,使用 throw 語句拋出異常,異常類型可以是標準庫異常類別或自訂異常類別。在實戰案例中,如果除數為零,divide 函數會拋出一個 runtime_error,並在 main 函數中透過 catch 區塊擷取並處理異常。
C++ 例外狀況是處理意外事件的機制。它們允許程式優雅地處理錯誤,而不會導致崩潰。
要捕獲異常,請使用以下語法:
try { // 容易抛出异常的代码 } catch (exception& e) { // 异常处理代码 }
try
區塊包含可能拋出異常的程式碼。如果拋出異常,控制權將轉移到對應的 catch
區塊。 catch
區塊參數指定用於處理特定例外類型的參考。
可以透過使用throw
語句來拋出例外:
throw exception();
exception
可以是標準函式庫異常類別(例如runtime_error
)或自訂異常類別。
考慮以下程式碼範例:
#include <exception> int divide(int a, int b) { if (b == 0) { throw std::runtime_error("除数不能为零"); } return a / b; } int main() { try { int result = divide(10, 0); std::cout << result << std::endl; } catch (const std::runtime_error& e) { std::cout << "错误:" << e.what() << std::endl; } }
在main
函數中,我們呼叫divide
函數,並嘗試捕獲可能拋出的任何異常。如果除數為零,divide
函數會拋出一個 runtime_error
,並顯示錯誤訊息。
以上是如何捕捉和處理C++異常?的詳細內容。更多資訊請關注PHP中文網其他相關文章!