首先对构造函数、析构函数、虚函数的概念作出定义。
构造函数是类的同名成员函数,当创建类对象时它会自动执行,一般负责对类进行初始化、分配资源。
public:
类名(参数)
{
p = new int;
}
注意:
构造函数的访问属性必须是public否则无法创建对象;
构造函数可以重载,可以有多个版本的构造函数;
调用带参数的构造函数:Test t(实参);
默认情况下编译器自动生成一个没有参数的,什么都不做的构造函数,如果一旦显式实现带参数的构造函数,则无参构造不生成,Text t调用无参构造时,如果没有无参构造,语句报错;
可以通过设置默认形参来达到无参构造的效果;
构造函数没有返回值;
不使用malloc为类对象分配内存,因为malloc不会调用类的构造函数。
析构函数是负责对类对象进行收尾,比如释放类中的资源,保存数据等,当类对象销毁时自动调用。
public:
类名(参数)
{
p = new int;
}
~类名()
{
delete p;
}
注意:
析构函数也必须是public;
析构函数没有参数,没有返回值,不能重载;
类对象