用虚拟成员函数 C++ 覆盖虚拟成员

时间:2021-02-06 18:16:21

标签: c++ inheritance virtual

我有一个关于虚拟成员函数的问题。我们来看看这段代码:

#include <iostream>

using namespace std;

class B {
    public:
        virtual void function() {
            cout << "B function" << endl;
        }
};

class D : B{
    public:
        virtual void function() override {
            cout << "D function" << endl;
        }
};

class E : D{
    public:
        void function() override {
            cout << "E function" << endl;
        }
};

D 类中的 virtual 关键字是多余的吗?拥有它和省略它的效果一样吗?

谢谢。

0 个答案:

没有答案