对象的初始化和清理(构造和析构函数)
在C++中,当我们创建对象的时候,这个对象应该有一个初始状态,这时候就需要一个构造函数,那么,当对象在销毁之前应该销毁自己创建的一些数据,即为析构。
其实在C++中,对象的初始化和清理工作是编译器强制我们要做的事情,即使我们不提供不提供构造函数和析构函数,编译器也会增加默认的操作,只是这个默认初始化操作不会做任何事,所以编写类就应该顺便提供初始函数。
构造函数和析构函数
构造函数主要作用于创建对象时为对象的成员属性赋值,构造函数由编译器自动调用,无须手动调用。
析构函数主要用于对象销毁前系统自动调用,执行一些清理工作。
构造函数语法
构造函数函数名和类名相同,没有返回值,不能有 void,但可以有参数。
ClassName(){}
析构函数语法
析构函数函数名是在类名前面加”~”组成,没有返回值,不能有 void,不能有参数, 不能重载。
~ClassName(){}