您的位置:首页 > 编程语言 > C语言/C++

C++ 类的继承和组合

2016-03-24 14:23 281 查看
C++中设计孤立的类是非常容易的,难的是如何设计正确的基类和派生类。

继承(inheritance) 组合(composition)

如果类A和类B没啥太大关系,不要为了让类B多点功能就硬是让它继承类A,这样就好像一个好好地大老爷们你给他各种吃人参,吃甲鱼补身体一样。

还有关键的一点是如果B是A的一种(a kind of)这时候就要用到继承了,比如Man是一种(a kind of)Human。加强一下,如果逻辑上B是A的一种,并且,A的所有功能都对B有益,则继承。一个特例就是一个圆继承椭圆的话,它的长轴短轴继承的就毫无意义了。

组合的意义是一部分(a part of)。如果A是B的一部分,则B不能继承A,而是B由A和其他类组合而成的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: