顶层父类的创建
当代软件架构的设计
- 尽量使用单重继承的方式进行系统设计
- 尽量保持系统中只存在单一的继承树
- 尽量使用组合关系代替继承关系
c++问题
- C++允许存在多个继承树
- 编译器差异使得代码的编译结果不同(eg:new)
创建顶层父类的意义
- 遵循经典设计准则,所有的数据结构都继承自顶层父类
- 定义动态内存申请行为,提高代码移植性
顶层父类(抽象类的定义)
Class Object{
public:
void* operator new(unsigned int size)throw();
void* operator delete( void* p)
void* operator new[](unsigned int size)throw();
void operator delete[](void* p);
virtual ~Object()=0;
}