Zitat von
knochen:
Was ich mir schon seit ca. 13 Jahren wünsche (Delphi 2), ist ein Compiler- oder
IDE-Schalter, der ein Objekt automatisch
nilt, wenn ich Free aufrufe.
Das gibt es. Nennt sich Delphi.Prism.
Zitat von
knochen:
Da werden über die Jahre Features eingebaut, die vor Mächtigkeit nur so strotzen, aber dieses kleine, oft gewünschte und unermesslich nützliche Feature kriegt die Compilercompany nicht hin? - Aua.
Also ich habe das nicht vermisste. Dort wo es nötig ist bau ich FreeAndNil ein und dort wo es nicht nötig ist lass ich es so.
Zitat von
knochen:
Zu uns: wir haben ca. 500 MB Quelltexte, historisch gewachsen. Zwei primäre Gründe haben mich zu der Frage veranlasst.
1. Die Destruktoren heißen nicht immer Free.
Der Destruktor heiß nie Free. Er heißt eigentlich fast immer Destroy! Free ist eh schon ein Hilfskonstrukt mit folgenden Quellcode
Delphi-Quellcode:
if Self <> nil then
Destroy;
Zitat von
knochen:
2. Die Sourcen sind zu ca. einem Viertel generiert.
Das sollte es ja kein Problem sein jeden Free-Aufruf durch FreeAndNil() zu ersetzen.
Zitat von
knochen:
Auf jeden Fall danke ich euch für eure Vorschläge und Verweise auf andere Threads. Den Vorschlag von Hawkeye219 werde ich auf jeden Fall mal ausprobieren.
Du willst doch nicht den einen problematischen Hack durch den nächsten Ersetzen?
Windows Vista - Eine neue Erfahrung in Fehlern.