本文主要是介绍C++_构造与析构的使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
介绍
本文使用构造与析构输出字符串"ABCC"
源码
#include<iostream>
#include<string>using namespace std;class Test
{char x;
public:Test(char t) : x(t){cout << 'A';}~Test(){cout << this->x << "CC" << endl;}
};int main()
{//栈区对象{cout << "栈区对象:" << endl;Test p1('B');}cout << endl;//堆区对象cout << "堆区对象:" << endl;Test *p2 = new Test('B');delete p2;system("pause");return 0;
}
运行结果
栈区对象:
ABCC堆区对象:
ABCC
请按任意键继续. . .
笔记扩充
构造析构 的 构造顺序
源码
#include<iostream>
#include<string>using namespace std;class A
{
public:A(){ cout << "A构造" << endl; }~A(){ cout << "A析构" << endl; }};
class B
{A a;
public:B(){ cout << "B构造" << endl; }~B(){ cout << "B析构" << endl; }
};
class C
{B b;
public:C(){ cout << "C构造" << endl; }~C(){ cout << "C析构" << endl; }
};
void main()
{C *pc=new C;cout << endl;delete pc;system("pause");
}
运行结果
A构造
B构造
C构造C析构
B析构
A析构
请按任意键继续. . .
这篇关于C++_构造与析构的使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!