Compiler Error C3651


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on

The latest version of this topic can be found at Compiler Error C3651.

member' : cannot be used as an explicit override, must be a member of a base class

An explicit override was specified, but the function being overridden was in a type that is not a base type.

For more information, see Explicit Overrides.

The following sample generates C3651:

// C3651.cpp  
// compile with: /clr /c  
ref class C {  
   virtual void func2();  
ref class Other {  
   virtual void func();  
ref class D : public C {  
   virtual void func() new sealed = Other::func;   // C3651  
   virtual void func2() new sealed = C::func2;   // OK