在C++編程中,處理異常情況通常使用try-catch語句塊。try塊包含可能引發異常的代碼,而catch塊則包含處理異常的代碼。當try塊中的代碼引發異常時,程序將跳轉到相應的catch塊,并執行其中的代碼。
以下是一個簡單的示例,演示如何使用try-catch語句塊處理異常情況:
#include <iostream>
#include <stdexcept>
int main() {
try {
int num = -10;
if (num < 0) {
throw std::invalid_argument("Negative number");
}
std::cout << "Number is positive" << std::endl;
} catch (const std::invalid_argument& e) {
std::cerr << "Caught an exception: " << e.what() << std::endl;
} catch (...) {
std::cerr << "Caught an unknown exception" << std::endl;
}
return 0;
}
在這個示例中,我們嘗試將一個負數賦值給變量num。如果num小于0,我們拋出一個std::invalid_argument異常。在catch塊中,我們捕獲并處理這個異常。如果catch塊無法處理異常,我們可以使用catch(…)來捕獲所有類型的異常。