溫馨提示×

C++異常處理如何實現(xiàn)

c++
小樊
81
2024-10-24 13:30:28
欄目: 編程語言

在C++中,異常處理是通過使用try、catchthrow關(guān)鍵字來實現(xiàn)的。下面是一個簡單的異常處理示例:

#include <iostream>
#include <stdexcept>

int main() {
    int num1 = 10;
    int num2 = 0;
    int result;

    try {
        // 可能拋出異常的代碼
        if (num2 == 0) {
            throw std::runtime_error("除數(shù)不能為0");
        }
        result = num1 / num2;
    } catch (const std::runtime_error& e) {
        // 處理異常的代碼
        std::cerr << "捕獲到異常: " << e.what() << std::endl;
    } catch (...) {
        // 處理未知類型的異常
        std::cerr << "捕獲到未知類型的異常" << std::endl;
    }

    return 0;
}

在這個示例中,我們嘗試執(zhí)行除法操作,但是除數(shù)為0,所以會拋出一個std::runtime_error異常。我們使用try關(guān)鍵字將可能拋出異常的代碼包裹起來,然后在catch子句中捕獲并處理異常。我們使用const std::runtime_error&類型捕獲異常,這樣可以避免不必要的異常對象復(fù)制,并且可以直接訪問異常對象的what()方法來獲取異常的描述信息。我們還使用了一個通用的catch子句來捕獲未知類型的異常。

通過這種方式,我們可以實現(xiàn)C++中的異常處理,確保程序在遇到錯誤時能夠正確地響應(yīng)并處理異常情況。

0