记住:
创建DragonLib::Object类的意义:(单一继承树)
1.遵循经典设计准则,所有数据结构都继承自Object类
2.定义动态内存申请的行为,提高代码的移植性
测试:
Test a;
sizeof(a)多大?12,两个int类型加上一个Object里指向虚函数表的指针
小结
- Object类是Lib中数据结构类的顶层父类
- Object类用于统一动态内存申请的行为
- 在堆中创建Object子类的对象,失败时返回NULL值
- Object类为纯虚父类,所有子类都能进行动态类型识别
注:
及时复习C++(98/03):
C++类型识别
自定义内存管理
异常处理深度解析
函数异常规格说明
动态内存申请的结果