关于 this 指针
- 调用父类的成员
- 非 const 成员中
- const 成员中
动态绑定与静态绑定
- 绑定时期
- 动态绑定三条件
- 父类指针调用
- 调用虚函数
- 向上转型,即不能是子类指针指向父类对象
关于 const
- const 数据成员与 const 成员函数
- const 对象 与 成员函数
- const 对象(数据成员不可改变),只能调用 const 成员函数(保证不改变对象的数据成员)
- 非 const 对象(数据成员可改变), 可以调用 const 成员函数和非 const 成员函数(不保证不改变数据成员)
- 当 const 和非 const 成员函数同时存在的时候,非 const 对象只会调用非 const 成员函数
- 非 const 成员函数中可以调用 const 成员函数,反之则不行
- 第一,传给 const 成员函数的 this 指针是 const 指针,指向的数据成员不可改变,此时调用非 const 成员函数,即:非 const 成员函数中传入的是 const 成员函数,显然不行。
- 第二,const 成员函数不改变对象数据成员,而其中调用可能改变数据成员的非 const 成员函数,明显不合理。
重载 operator new, operator delete, operator new[], operator delete[]
- operator new 和 operator new[] 的传入参数表示什么?
- operator new[] 分配的空间为什么比对象本身的 size 大?
重载 new 和 delete()
- placement delete 的作用?什么时候调用?
- 为什么 new delete 的重载成员函数都是 static ?