在C++中,處理異常情況通常使用 try-catch 語句塊。以下是一個簡單的示例,展示了如何使用 try-catch 語句處理異常:
#include <iostream>
#include <stdexcept>
int main() {
try {
// 嘗試執行可能引發異常的代碼
int denominator = 0;
if (denominator == 0) {
throw std::runtime_error("除數不能為0");
}
int result = 10 / denominator;
std::cout << "結果: " << result << std::endl;
} catch (const std::runtime_error& e) {
// 捕獲并處理異常
std::cerr << "發生異常: " << e.what() << std::endl;
} catch (...) {
// 捕獲并處理其他未知異常
std::cerr << "發生未知異常" << std::endl;
}
return 0;
}
在這個示例中,我們嘗試執行一個可能引發異常的代碼(除以0)。如果發生異常,我們會捕獲它并輸出相應的錯誤信息。我們使用 std::runtime_error
類創建一個異常對象,并將其傳遞給 catch 語句塊。你還可以使用其他標準異常類(如 std::exception
)或自定義異常類。
注意,將可能引發異常的代碼放在 try 語句塊中,將處理異常的代碼放在 catch 語句塊中。這樣可以確保在發生異常時,程序能夠優雅地處理錯誤,而不是崩潰。