1,构造函数
1.1 实例
1.2 概念
防止忘记初始化,专门给类对象初始化
1.3 备注
2,析造函数
2.1 实例
2.2 概念
防止忘记销毁,专门销毁类对象
2.3 备注
3,默认构造函数
3.1 实例
3.2 概念
编译器自动生成的构造函数
3.3 备注
4,默认析构函数
4.1 实例
4.2 概念
编译器自动生成的析构函数
4.3 备注
5,默认拷贝构造
5.1 实例
5.2 概念
编译器自动生成的拷贝函数
5.3 备注
6,运算符重载
6.1 实例
不能创造新的符号,不能增加操作符操作数的数量
(::)(.*)(?:)(sizeof)(.)
上面5个不能重载
6.2 概念
重载运算符,让自定义类型可以使用运算符
6.3 备注
6.3.1流插入运算符重载
6.3.1流提取运算符重载
7,友元函数
7.1 实例
7.2 概念
让类外的函数可以访问类的私有成员
7.3 备注
8,默认赋值运算符重载
8.1 实例
两个参数,隐含this指针
默认生成的赋值运算符重载,以值的方式逐字节拷贝,自定义类型会调用自定义类型的赋值重载,类似拷贝构造的浅拷贝。
8.2 概念
不写默认生成的自定义类的赋值运算符重载
8.3 备注
8.3.1 赋值运算符重载与拷贝构造的区别
已经存在对象初始化一个对象——拷贝构造
两个已经存在的对象之间的拷贝
8.3.2 前置++与后置++
所以自定义类型前置++效率高
9,初始化列表
9.1 实例
9.2 概念
有些成员必须在初始化列表初始化,如引用成员变量,const成员变量,自定义类型成员
9.3 备注
9.3.1初始化顺序
按照声明的顺序初始化而不是初始化列表中定义的顺序,先初始化_a再初始化_b
9.3.2静态成员变量和静态成员函数
9.3.3有静态成员的类的大小
10,匿名对象
10.1 实例
10.2 概念
类实例化不给对象名,即用即毁,多用于一次性用成员函数
10.3 备注
10.3.1 const引用匿名对象
11 NEW
11.1 实例
11.2 概念
代替malloc的关键字,new可以调用自定义类的构造函数,帮助自定义类型初始化。
11.3 备注
12 模板
12.1 实例
12.2 概念
模板实例化后生成不同的重载函数实现功能
12.3 备注
12.3.1显示实例化
12.3.2类模板
只能实例化调用