Compiler Error C3665


For the latest documentation on Visual Studio 2017, see Visual Studio 2017 Documentation.

'destructor' : override specifier 'keyword' not allowed on a destructor/finalizer

A keyword was used that is not allowed on a destructor or finalizer.

For example, a new slot cannot be requested on a destructor or finalizer. For more information, see Explicit Overrides and Destructors and finalizers.

The following sample generates C3665:

// C3665.cpp  
// compile with: /clr  
public ref struct R {  
   virtual ~R() { }  
   virtual void a() { }  
public ref struct S : R {  
   virtual ~S() new {}   // C3665  
   virtual void a() new {}   // OK