构造函数概念
构造函数是C++中一种特殊的函数,主要用来在【创建】对象时【初始化对象】。
构造函数的特点
没有【返回值】,名称和【类名】相同
class Date
{
public:
//构造函数
//特点:函数名与类名相同,无返回值
//作用:对对象的初始化
Date(int year, int month, int day)
{
_year = year;
_month = month;
_day = day;
}
private:
int _year;
int _month;
int _day;
};
初始化方法
1.在构造函数内部初始化
第一种方法参见【上个代码块】
在构造函数内部进行初始化
2.利用初始化列表
class Date
{
public:
//构造函数
//方法:运用【初始化成员列表】进行初始化
//特点:在函数大括号前,用【冒号】私有成员名(参数名)以及【逗号】组成
Date(int year, int month, int day)
:_year(year), _month(month), _day(day)
{
//这里什么都可以不写
}
private:
int _year;
int _month;
int _day;
};
对特殊成员的初始化
1.对于const类型的私有成员
必须使用【初始化列表】的方法进行初始化
原因:const成员一旦定义【不能】被【修改】。
当构造函数的初始化列表就是定义的时刻
进入函数内部中,就不能被修改了
2.对于引用类型的私有成员成员
引用类型和const类型一样,也必须在初始化成员列表初始化
构造函数总结
构造函数的作用:初始化对象
在初始化对象的时候要注意两种初始化的方法
以及对特殊的私有成员初始化的方法进行掌握