第三章
封装:
- 权限控制
- 数据和行为在一起
声明与实现分离:
类中函数不占空间的
默认参数只能在声明上。
第四章
-
构造器
类中的默认参数只能在声明处,不能在定义处。 -
拷贝构造器
调用拷贝构造器。 -
private
在同类之间是没有隐私
类中没有new新空间就不需要析构器。
sizeof、strlen
strcpy、memcpy
strcpy:根据’\0’确定拷贝结束位置;
mempy:拷贝的起始位置,以及拷贝的长度进行拷贝;
赋值运算符重载。
深拷贝
数据在栈上还是堆上
- 系统提供默认的赋值运算符重载,一经实现,不复存在。
- 系统提供的也是等位拷贝,也就是浅拷贝,会造成内存泄漏,重析构。
- 要实现深深的赋值,必须自定义。
- 自定义面临的问题有三个:
- 自赋值
- 内存泄漏
- 重析构
- 返回引用,且不能用const修饰。
深拷贝代码
class A