Einzelnen Beitrag anzeigen

Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.565 Beiträge
 
#9

AW: FreeAndNil macht Probleme

  Alt 27. Sep 2020, 16:01
@jfheins: Das heißt, dass durch den Umweg über das Casting zu TObject (damit in jedem Fall Nil geschieht) direkt die Original-Methode Free von TObject aufgerufen und dadurch mein Free (mangels override) umgangen wird?
Ja, genau. Das passiert bei allen Methoden, die nur verdeckt werden. (Verdecken = Neue Definition aber ohne override)

=> Verdecken sollte vermieden werden.

Zitat:
Tricky, würde ich sagen. Warum ist denn dann TObject.Free nicht virtuell? Jedenfalls wieder eine Erkenntnis.
Weil .Destroy ja schon virtuell ist damit genau eine einzige Stelle existiert, wo man Freigabecode unterbringen sollte.

Free hingegen macht ja nur den nil check mehr, und damit war die Methode aus Sicht der Entwickler einfach fertig.
  Mit Zitat antworten Zitat