Einzelnen Beitrag anzeigen

Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: TIniFile umbiegen zu TIniMemFile

  Alt 6. Nov 2016, 21:40
Entschuldige das ist Quatsch.

Wieso eine extra Procedure die nichts anderes macht als ein Destructor?

Eine Klasse die sich selber in einer Procedure/Function zerstört verletzt ja wohl alle OOP Regeln
Ganz einfach weil eine Prozedur das machen sollte, was ihre Bezeichnung aussagt. Und eine weitere Funktion an den Destruktor zu hängen finde ich unsauber.

Ich wüsste jetzt nicht, warum eine Prozedur "TueDiesUndFree" irgendeine Regel der OOP verletzen sollte...

Wieder etwas dazugelernt, danke euch
Achte nur auf das "inherited" in deinem Destruktor und dass du Destroy statt Free überschreibst.
Ganz einfach

Deine klasse kann man nicht benutzen wie jede andere

normalerweise erwartet man nicht das eine Procedure die Klasse freigibt.

immer
1.create
2.arbeiten
3.freigeben




Delphi-Quellcode:
T := TIrgendwas.create;
try
  t.tuewas;
t.UpdateFileAndFree; // Du gibts die klasse frei
t.tuewasanders; // Knallt


finally
 t.free;
end;
Wenn Du das verhalten änderst ist das einfach falsch.
Wenn schon überschreibe den destructor.
Fritz Westermann
  Mit Zitat antworten Zitat