ubuntu

Ubuntu上C++异常处理怎么做

小樊
44
2025-05-14 14:34:14
栏目: 编程语言

在Ubuntu上使用C++进行异常处理,你需要遵循C++异常处理的基本规则。C++异常处理主要通过以下几个关键字实现:trycatchthrow

下面是一个简单的示例,展示了如何在Ubuntu上使用C++进行异常处理:

#include <iostream>
#include <stdexcept>

int main() {
    int a = 10;
    int b = 0;

    try {
        if (b == 0) {
            throw std::runtime_error("除数不能为0");
        }
        int result = a / b;
        std::cout << "结果是: " << result << std::endl;
    } catch (const std::runtime_error& e) {
        std::cerr << "捕获到异常: " << e.what() << std::endl;
    } catch (...) {
        std::cerr << "捕获到未知异常" << std::endl;
    }

    return 0;
}

在这个示例中,我们首先包含了<iostream><stdexcept>头文件。<iostream>用于输入输出操作,<stdexcept>包含了C++标准库中的异常类。

main函数中,我们定义了两个整数变量ab。我们使用try关键字创建了一个异常处理块。在这个块中,我们检查b是否为0,如果是,则使用throw关键字抛出一个std::runtime_error异常,并附带一条错误信息。

接下来,我们使用catch关键字捕获异常。首先捕获std::runtime_error类型的异常,并输出异常信息。然后捕获所有其他类型的异常。

要编译这个程序,你可以使用g++编译器。在终端中输入以下命令:

g++ -o exception_example exception_example.cpp

然后运行生成的可执行文件:

./exception_example

如果一切正常,你将看到输出“捕获到异常: 除数不能为0”。如果你将b的值更改为非零值,程序将正常运行并输出结果。

0
看了该问题的人还看了