温馨提示×

c++ std异常处理如何做

c++
小樊
83
2024-11-15 14:26:57
栏目: 编程语言
C++开发者专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

C++ 的标准异常处理主要依赖于 trycatchthrow 这三个关键字。以下是一个简单的示例,展示了如何使用这些关键字来处理异常:

#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;
}

在这个示例中,我们首先使用 try 关键字包裹可能抛出异常的代码。如果发生异常,程序将立即跳转到相应的 catch 块。我们可以使用 catch 关键字捕获特定类型的异常,例如 std::runtime_error,并处理它。如果没有捕获到特定类型的异常,程序将跳转到捕获所有其他类型异常的通用 catch 块。

catch 块中,我们可以使用 e.what() 方法获取异常的描述信息。这有助于我们了解发生了什么问题,并采取适当的措施来处理异常。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:c++ std时间处理如何做

0