如何指定可以保证由任何重写函数调用的C ++虚函数?

问题描述

我希望编译器在调用任何覆盖函数时始终调用基本虚函数,而不必在覆盖程序的定义中明确写下来。编译器已经为虚拟析构函数执行此操作,即派生类的析构函数隐式调用其基类的析构函数。是否可以使用某种关键字在非析构函数中启用类似行为?

class Base {
public:
  virtual ~Base() {}
  virtual void foo() {}
};

class Derived : public Base {
public:
  ~Derived() {
    // Compiler automatically calls Base::~Base()
  }
  void foo() override {
    // I want Base::foo() to be implicitly called here
  }
};

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)