阅读量:3
在 C++ 中,iostream 库提供了处理异常的机制。当程序遇到无法处理的错误时,可以通过抛出和捕获异常来处理这些错误。以下是一个简单的示例,展示了如何使用 iostream 库处理异常:
#include
#include
int main() {
try {
// 尝试执行可能引发异常的操作
int result = divide(10, 0);
std::cout << "Result: " << result << std::endl;
} catch (const std::runtime_error& e) {
// 捕获并处理 runtime_error 异常
std::cerr << "Error: " << e.what() << std::endl;
} catch (const std::exception& e) {
// 捕获并处理其他标准异常
std::cerr << "Error: " << e.what() << std::endl;
} catch (...) {
// 捕获并处理所有其他类型的异常
std::cerr << "Unknown Error occurred" << std::endl;
}
return 0;
}
int divide(int a, int b) {
if (b == 0) {
// 如果除数为零,抛出一个 runtime_error 异常
throw std::runtime_error("Division by zero is not allowed.");
}
return a / b;
}
在这个示例中,我们定义了一个名为 divide 的函数,该函数执行除法操作。如果除数为零,我们抛出一个 std::runtime_error 异常。在 main 函数中,我们使用 try 块来尝试执行可能引发异常的操作。如果发生异常,程序将跳转到相应的 catch 块来处理异常。
在这个例子中,我们捕获了 std::runtime_error 异常以及所有其他类型的 std::exception 异常。这样,我们可以针对不同类型的异常采取不同的处理措施。如果没有异常发生,程序将正常执行。
以上就是关于“C++输出流如何处理异常”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm