<分区>
我有一个基类 A
和一些派生类 B
、C
和 D
,所有这些有一个方法 DoSomething()
,它在基类方法中是虚拟的(它在所有子类和基类中实现)。
我有一个问题,派生类 B 使用基类 A 的方法。这可能是设计不当的结果,但我没有看到问题,因为实现非常简单。
在下面创建的类 B 的对象
A* a = new B();
如果我为此对象调用方法DoSomething()
,则使用基类的方法:
a->DoSomething(); //Results in Base class method being called.
但我期望/希望使用类 B 的方法。你能告诉我哪里出了问题吗?