C++构造函数和析构函数
目录
1、构造函数
构造函数:主要用于创建对象时为对象的成员属性赋值,构造函数由编译器自动调用,不用手动调用
构造函数语法:类名(){}
- 构造函数无返回值,不用写void
- 函数名称和类名称相同
- 构造函数可以有参数,因此可以发生重载
- 程序在调用对象时会自动调用构造,无需手动调用,而且只会调用一次
2、析构函数
析构函数:主要作用在于对象销毁前系统自动调用,执行一些清理工作
析构函数语法:~类名(){}
- 析构函数没有返回值,也不用写void
- 函数名称和类名称相同,在名称前面加上符号~
- 析构函数不能有参数,因此不能发生重载
- 程序在对象销毁前会自动调用析构,无需手动调用,而且只会调用一次
3、代码
#include<iostream>
using namespace std;
//对象初始化和清理
//1、构造函数 进行初始化操作
class Person
{
public:
//构造函数
Person()
{
cout<<"gou zao"<<endl;
}
//析构函数
~Person()
{
cout<<"xi gou"<<endl;
}
};
//构造和析构都是必须有的实现,如果我们不提供,编译器会提供一个空的实现
void test01()
{
Person p;//在栈上的数据,test01执行完毕后,释放这个对象
}
int main(){
test01();
system("pause");
return 0;
}