在进行类层次设计时,常见的错误是误用公有继承。除非要表达的是真正的 IS-A 和 WORKS-LIKE-A 的关系,才使用公有继承。
设计准则:
- 绝对不要以公有继承来复用基类的代码;公有继承是为了被复用 - 被那些“以多态方式运用基类对象”的代码复用。
- 当我们需要表达“用来实现”的关系时,选择成员方式而不要使用继承。只有在绝对必要的情况下才使用私有继承 - 也就是说当需要存取保护成员或是需要改写虚拟函数时。绝对不要只为了重复运用代码而使用公有继承。
文章来源:
http://my.donews.com/robinchow/2007/01/13/qzpjchcewcpuedbnfmewwwychrghoqnfpdor/