重写继承的类c ++中基类调用的函数

时间:2018-11-22 19:51:08

标签: c++ inheritance override

最近,我正在一个项目上,遇到一个不寻常的问题,这导致我不得不做一个效率很低的解决方法。

代码如下:

class Foo {
    public:
        void doSomething() {
            cout << "Something done";
        }
        void doSomethingIf(bool b) {
            if (b)
                doSomething();
        }
}

class Bar : public Foo {
    public:
        void doSomething() {
            cout << "Something else done";
        }
}

我希望它在继承的类上调用doSomethingIf,但是我希望它运行doSomething()的重写版本。除了将doSomethingIf复制到Bar类之外,还有其他方法吗?

0 个答案:

没有答案