class base
{
public:
virtual void start();
virtual void stop();
void doSomething() { start(); .... stop(); }
}
class derived : public base
{
public:
void start();
void stop();
}
但是,当我在派生类中调用 doSomething()
时,它使用的是自己定义的 Start()
和 Stop()
- 而不是派生类中的定义。
我不想在派生类中重新编写 doSomething()
,因为它与基类中的相同。我做错了什么?
如果不太清楚,请见谅。
派生类中的 Start()
和 Stop()
的行为有所不同(它是另一台机器) - 但我想使用原始的基类中的 doSomething()
,因为它没有改变。只需要使用新的派生类代码启动()和停止()即可。
doSomething()
时,它使用的是自己定义的Start()
和Stop()
- 而不是__派生类的__" [强调是我的]?因为如果是这样的话,我甚至不理解你的问题是什么。 - sbi