构造函数与析构函数
来源:互联网 发布:知行天下品牌策划 编辑:程序博客网 时间:2024/06/05 11:27
构造函数与析构函数之区别
定义
名字
参数
返回值
调用
重载
继承
构造函数
特殊的成员函数,主要用于为对象分配空间,完成初始化工作
与类名相同
可以带
没
在对象定义时,被自动调用
可
不可
如果没有给类定义构造函数(析构函数),则编译系统会自动生存一个默认的构造函数(析构函数)
析构函数
特殊的成员函数,主要用于释放类实例
与类名相同,但前面加了一个“~”符号
不能带
当撤销对象时,被自动调用
不可
允许在一个类中有多个构造函数。如果一个都没有,则编译器自动生成一个不带参数的缺省构造函数,其格式如下:
类名::缺省构造函数名()
{ }
类名::缺省构造函数名()
{ }
而对一个类来说,只能允许一个析构函数。同理,如果一个类中没有定义析构函数时,则编译系统也生成一个缺省析构函数,其格式如下:
类名::~缺省析构函数名()
{
}
类名::~缺省析构函数名()
{
}
对象被析构的顺序,与其建立时的顺序相反,即后构造的对象先析构。构造从类层次的最根处开始,在每一层中,首先调用基类的构造函数,然后调用成员对象的构造函数。析构则严格按照与构造相反的次序执行,该次序是唯一的,否则编译器将无法自动执行析构过程。
一般析构函数定义为类的公有成员。
构造函数与析构函数之语法
构造函数之静态构造函数
静态构造函数用于初始化任何静态数据,或用于执行仅需执行一次的特定操作。在创建第一个实力或引用任何静态成员之前,将自动调用静态构造函数。
语法:
Class SimpleClass
{
//Static constructor
static SimpleClass()
{
//...
}
}
0 0
- 构造函数与析构函数
- 构造函数与析构函数
- c#构造函数与析构函数
- 构造函数与析构函数
- 构造函数与析构函数(整理)
- 构造函数与析构函数
- 构造函数与析构函数
- c#构造函数与析构函数
- 构造函数与析构函数研究
- 构造函数与析构函数(读书笔记)
- 构造函数与析构函数
- 构造函数与析构函数
- 构造函数与析构函数
- 构造函数与析构函数
- C++ 构造函数与析构函数
- 构造函数与析构函数
- 构造函数与析构函数
- 使用构造函数与析构函数
- 01背包问题(回溯法)python实现
- 100个windows平台C++开发错误之容器
- JavaScript,复习总结
- poll_wait函数详解
- 日志分析系统
- 构造函数与析构函数
- 小感慨
- [BASIC-25] 回形取数
- 100个windows平台C++开发错误之编程
- 100个windows平台C++开发错误之初始化问题
- 100个windows平台C++开发错误之指针
- Eulerproblem-12 for python
- 100个windows平台C++开发错误之宏定义
- 操作系统实验四之进程同步实验