c++ try catch 如何使用
时间: 2024-11-01 08:07:27 浏览: 25
在C++中,`try-catch` 结构用于处理程序运行期间可能出现的异常情况。它的基本语法如下:
```cpp
try {
// 可能抛出异常的代码块
int x = 5 / 0; // 这里会抛出除以零错误(std::runtime_error)
} catch (ExceptionType1 e) {
// 处理 ExceptionType1 类型的异常
std::cout << "捕获到 ExceptionType1: " << e.what() << std::endl;
} catch (ExceptionType2 e) {
// 处理 ExceptionType2 类型的异常
std::cout << "捕获到 ExceptionType2: " << e.what() << std::endl;
} finally {
// 无论是否发生异常,都会执行的代码
std::cout << "finally 区段" << std::endl;
}
```
1. `try` 块包含可能会抛出异常的代码。
2. 如果在 `try` 块内发生了预期类型的异常,对应的 `catch` 子句会被执行。你需要指定特定的异常类型(如 `std::exception`, `std::runtime_error` 等),如果抛出的是该类型的异常,就会执行相应的处理代码。
3. 如果没有匹配的 `catch` 子句处理特定类型的异常,那么异常将不会被捕获,程序通常会终止并显示一个默认的错误信息。
4. `finally` 子句是可选的,它包含了无论是否发生异常都要执行的清理代码。
阅读全文