C ++中的异常处理和对象销毁
C++中的析构函数基本上是在对象被销毁并从系统释放内存时调用的。当在类中引发异常时,在执行catch块之前会自动调用析构函数。
算法
Begin
Declare a class sample1.
Declare a constructor of sample1.
Print “Construct an Object of sample1”
Declare a destructor of sample1.
Print “Destruct an Object of sample1”
Declare a class sample.
Declare a constructor of sample2.
Declare variable i of the integer datatype.
Initialize i = 7.
Print “Construct an Object of sample1”.
Throw i.
Declare a destructor of sample2.
Print “Destruct an Object of sample2”
Try:
Declare an object s1 of class sample1.
Declare an object s2 of class sample2.
Ctach(int i)
Print “Caught”.
Print the value of variable i.
End.范例程式码
#include <iostream>
using namespace std;
class Sample1 {
public:
Sample1() {
cout << "Construct an Object of sample1" << endl;
}
~Sample1() {
cout << "Destruct an Object of sample1" << endl;
}
};
class Sample2 {
public:
Sample2() {
int i =7;
cout << "Construct an Object of sample2" << endl;
throw i;
}
~Sample2() {
cout << "Destruct an Object of sample2" << endl;
}
};
int main() {
try {
Sample1 s1;
Sample2 s2;
} catch(int i) {
cout << "Caught " << i << endl;
}
}输出结果
Construct an Object of sample1 Construct an Object of sample2 Destruct an Object of sample1 Caught 7
热门推荐
10 横幅元旦祝福语大全简短
11 同事们生日祝福语简短
12 老婆生日祝福语简短孩子
13 送给姐姐简短的祝福语
14 致姐姐生日祝福语简短
15 祝福语勤奋大全简短英语
16 学霸毕业祝福语简短
17 祝福语简短创意闺蜜
18 项目建设春节祝福语简短