共用方式為


編譯器錯誤 C2387

'type' : 模棱兩可的基類

編譯程式無法明確解析函式呼叫,因為函式存在於多個基類中。

若要解決此錯誤,請從繼承中移除其中一個基類,或明確限定函式呼叫。

下列範例會產生 C2387:

// C2387.cpp
namespace N1 {
   struct B {
      virtual void f() {
      }
   };
}

namespace N2 {
   struct B {
      virtual void f() {
      }
   };
}

struct D : N1::B, N2::B {
   virtual void f() {
      B::f();   // C2387
      // try the following line instead
      // N1::B::f();
   }
};

int main() {
   D aD;
   aD.f();
}