Destruktorsyntax in C# und C++

Sie können die Object.Finalize-Methode mithilfe der Programmiersprachen C# und C++ nicht aufrufen oder überschreiben. C# verwendet zum Schreiben von Finalisierungscode Destruktoren. Eine entsprechende Beschreibung finden Sie unter Destruktoren (C#-Programmierhandbuch).

In C++ wird die Destruktorsyntax für die Implementierung der Dispose-Methode verwendet. C++ stellt für das Implementieren der Finalize-Methode eine eigene Syntax bereit, wie unter Gewusst wie: Instanziieren Sie Klassen und Strukturen beschrieben.

Hinweis

Vor der Version 2.0 von .NET Framework wurde in C++ ebenso wie in C# eine Destruktorsyntax verwendet, um die Finalize-Methode zu implementieren, und in C++ war keine spezielle Syntax für die Implementierung der Dispose-Methode vorhanden.Um C++-Code zu kompilieren, in dem die frühere Syntax verwendet wird, verwenden Sie die Compileroption /clr:oldSyntax.

Trotz ihrer Ähnlichkeit weisen C#- und C++-Destruktoren nicht dieselbe Semantik wie nicht verwaltete C++-Destruktoren auf. Verwalteter Code unterstützt keine Semantik, die der für C++-Destruktoren gleicht.

Siehe auch

Referenz

Finalize

/clr (Common Language Runtime-Kompilierung)

Konzepte

Überschreiben der Finalize-Methode

Weitere Ressourcen

Bereinigen von nicht verwalteten Ressourcen