2.5构造函数和析构函数
构造函数和析构函数是两个特殊的成员函数,这个函数的名字和类名相同,构造函数定义对象的时候由系统自动调用,析构函数在删除对象的时候由系统自动调用。
2.5.1 构造函数的概念
在使用表达式“new”创建类对象时。系统会自动调用该类的构造函数,完成类对象数据成员的初始化,其声明格式为“<函数名>(<参数列表>)”需要注意的是,构造函数的名称必须与类名称相同。构造函数没有返回值,所以不能返回类型,构造函数不能被声明为 const 类型。任何类都最少有一个构造函数,如果程序不提供构造函数,系统则提供一个默认的构函数,默认的构造函数不带任何参数。构造函数的定义和使用方法如程序 212.cpp所示。
//案例名称: 构造函数的概念
//程序名称:212.CPP
# include<iostream>
using namespace std;
class Tdate
{
private:
int month;
public:
Tdate()
{
cout<<"自动调用构造函数"<<endl;
}
};
void main()
Tdate * b=new Tdate();
delete b;
}
程序执行的结果如图 2-12所示。
编辑切换为居中
图2-23 执行结果
程序解释:
可以看出在使用“new”创建对象的时候,自动调用了构造函数“Tdat