Error del compilador C3840

Actualización: noviembre 2007

Mensaje de error

declaración de 'método' no permitida; utilice destructores para implementar la finalización
declaration of 'method' not allowed; use destructors to implement finalization

Declare un destructor en lugar de un método Finalize en una clase administrada.

Sólo se puede reproducir el error C3840 utilizando /clr:oldSyntax.

El ejemplo siguiente genera el error C3840:

// C3840.cpp
// compile with: /clr:oldSyntax
#using <mscorlib.dll>
__gc class X
{
protected:

   void Finalize()
   {   // C3840, "declaration of 'X::Finalize' not allowed...
   }

   // declare a destructor instead
   // ~X()
   // {
   // }
};

int main()
{
}