【发布时间】:2014-07-09 06:51:36
【问题描述】:
我有一个关于 C++ 中的组合和继承的问题:
我有一个基类'A' 和一个派生类'B'('B' 从'A' 继承成员),是否可以通过组合将'B' 用作'A' 的成员?
【问题讨论】:
-
不可能,因为
A需要知道B的大小,其中包含A,其中包含B,其中.... -
这是假设的,对吧?您没有真正要解决的问题,是吗?
-
是的,我只是在问。因此,如果我将创建派生自
'A'并具有成员'B'的类'C',这是可能的,对吧? -
@Medvednic 对。在这种情况下,您将有两个
A实例,而不是无限的。 -
是的,您的
C : A { B b; };是合理的。
标签: c++ class oop inheritance composition