1. 再谈构造函数
1.1 构造函数体赋值
在创建对象时,编译器通过调用构造函数,给对象中各个成员变量一个合适的初始值。
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)
,_N(10)
{
}
private:
int _year;//成员变量的声明
int _month;
int _day;
const int _N;//常量必须在定义的时候初始化
};
int main()
{
Date d1(2022, 4, 8);//对象定义/对象实例化
Date d1(2022, 4, 9);//对象定义/对象实例化
return 0;
}
1.3 explicit关键字
2. static成员
2.1 概念
2.2 特性
3.C++11 的成员初始化新玩法
4. 友元
4.1 友元函数
4.2 友元类
5.内部类
5.1概念及特性
6. 再次理解封装
7.再次理解面向对象
可以看出面向对象其实是在模拟抽象映射现实世界。