【发布时间】:2014-09-11 22:25:01
【问题描述】:
我有一个类,它作为成员包含另一个类。第二个类是一个抽象类,由一系列子类中的一个以通常的方式具体化。 我不确定构造包罗万象的类的最佳方法,因为当它被构造时,肯定会抛出错误,因为它会尝试构造一个缺少其某些方法定义的类。任何人都可以建议解决这个问题的最佳方法吗? 干杯, 杰克
编辑1:类图:
Main Class
|
------------------------------------
| |
Normal Methods/Members Abstract Class member
|
-----------------------------
| |
Concrete Class 1 Concrete Class 2
所以“主类”是我担心的构造,因为当它被调用时,抽象类成员需要以某种方式具体化,但我不确定如何最好地做到这一点。
【问题讨论】:
-
您可以发布您的代码以使您的问题更清楚吗?
-
我无法发布代码,因为它非常庞大。不过我可以试着画一个小类结构图
-
你至少可以发布你的类结构...
-
如果没有一些(简化的)示例代码可以重现您的实际错误,很难回答这个问题。然而,“包罗万象的类”这个短语听起来像是一个糟糕的设计。对象应该为一个职责而实现。
-
那是继承图,还是封装图?还是两者的奇怪组合?请展示一些示例代码(它不必是实际代码,只需向我们展示您在做什么或您想要什么)。
标签: c++ oop constructor abstract-class