我们在MyLib数据结构内定义了顶层父类MyObject,数据结构中的所有子类都继承于MyObject顶层父类,前边我们定义的智能指针类SmartPointer、异常类ExcepTion都要稍作改动(这里代码不再显示,直接在对应的篇章中继承自MyObject类即可),将他们继承于MyObject类,确保MyLib 中的所有类位于单一的继承树。
LMSLib数据结构库的开发方式
- 单一继承树:所有类都继承自MyObject,规范堆对象创建时的行为
- 只抛异常,不处理异常:使用THROW_EXCEPTION抛出异常,提高可移植性
- 弱耦合性:尽量不使用标准库中的类和函数,提高可移植性
目前为止,对于LMSLib数据结构,我们已经完成了 智能指针类、异常类、顶层父类,并且做了相应的改进,将智能指针类与异常类都继承自顶层父类。后续将逐渐完成链表、树等这些数据结构。