(1)定义一个异常类Cexception,有成员函数reason(),用来显示异常的类型 (2)定义一个函数fun()触发异常,在主函数try语句块中调用fun(),在catch语句块中捕获异常,观察执行流程。
时间: 2024-02-21 09:02:06 浏览: 150
cpp-CException一个C实现的异常
好的,我来为您解答这个问题。
首先,我们需要定义一个异常类Cexception,代码如下:
```cpp
#include <iostream>
#include <string>
using namespace std;
class Cexception {
public:
Cexception(string reason) {
m_reason = reason;
}
string reason() {
return m_reason;
}
private:
string m_reason;
};
```
这个类有一个成员函数reason(),用来显示异常的类型。现在我们可以定义一个函数fun(),用来触发异常,代码如下:
```cpp
void fun() {
throw Cexception("This is an exception!");
}
```
现在我们可以在主函数中调用fun(),并且在catch语句块中捕获异常,观察执行流程。代码如下:
```cpp
int main() {
try {
fun();
}
catch (Cexception e) {
cout << "Exception caught: " << e.reason() << endl;
}
return 0;
}
```
在try语句块中调用fun()时,会抛出一个Cexception类型的异常。在catch语句块中捕获异常,并且调用异常对象的reason()函数来显示异常的类型。程序执行结果如下:
```
Exception caught: This is an exception!
```
这样,我们就成功定义了一个异常类Cexception,并且用try-catch语句块来捕获并处理了异常。
阅读全文