类的六个默认函数:
(一)构造函数的定义:
一种特殊的成员函数,主要用于为对象分配空间,进行初始化。构造函数的任务是初始化类对象的数据成员,无论何时只要类的对象被创建,就会执行构造函数。
eg:定义一个Date的构造函数
#include<iostream>
using namespace std;
class Date
{
public:
Date();//声明构造函数Date的原型
void setDate(int year,int month,int day);
void showDate();
private:
int _year;
int _month;
int _day;
};
Date::Date()//定义构造函数Date
{
cout<<"initialized"<<endl;
}
void Date::setDate(int year,int month,int day)
{
_year = year;
_month = month;
_day = day;
}
void Date::showDate()
{
cout<<_year<<"->"<<_month<<"->"<<_day<<endl;
}
int main()
{
Date date;
date.setDate(2016,9,27);
date.showDate();
system("pause");
return 0;
}
程序运行结果:
(二)成员初始化列表
在声明类时,对数据成员的初始化工作一般在构造函数中用赋值语句进行。而另一种方法是在函数首部对数据成员进行初始化,即用成员初始化列表来初始化数据成员。
1,成员初始化列表:以一个冒号开始,接着是用逗号分隔开的数据成员列表,每个数据后面跟一个放在圆括号中的初始化表达式。
带有成员初始化列表的构造函数的一般格式: