这个问题已经在这里有了答案:




已关闭8年。






是否可以在不知道基类名称的情况下在子类中调用基类成员函数? (类似于在Java中使用super关键字)

最佳答案

C++没有super关键字的标准等效项。但是有一个Microsoft特定的__super,如果您使用Visual Studio,我认为它可以达到相同的目的。

// deriv_super.cpp
// compile with: /c
struct B1 {
   void mf(int) {}
};

struct B2 {
   void mf(short) {}

   void mf(char) {}
};

struct D : B1, B2 {
   void mf(short) {
      __super::mf(1);   // Calls B1::mf(int)
      __super::mf('s');   // Calls B2::mf(char)
   }
};

引用:msdn

关于c++ - 如何在不知道C++中基类名称的情况下调用子类中基类的成员? ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11425510/

10-13 06:58