高质量C++编程指南 ----类的继承与组合

对象(Object)是类(Class)的一个实例(Instance)。如果将对象比作房子,那么类就是房子的设计图纸。所以面向对象设计的重点是类的设计,而不是对象的设计。

10.1 继承

如果 A 是基类,B 是A 的派生类,那么B 将继承A 的数据和函数。

继承规则:

(1)如果类A 和类B 毫不相关,不可以为了使B 的功能更多些而让B继承A 的功能和属性。

(2)若在逻辑上B 是A 的“一种”(a kind of ),则允许B 继承A 的功能和属性。

(3)若在逻辑上B 是A 的“一种”,并且A 的所有功能和属性对B 而言都有意义,则允许B 继承A 的功能和属性。

10.2 组合

       若在逻辑上A 是B 的“一部分”(a part of),则不允许B 从A 派生,而是要用A 和其它东西组合出B

你可能感兴趣的:(高质量C++编程指南 ----类的继承与组合)