Hallo,
Zitat von
Garfield:
Zitat von
tigerman33:
Wobei ich mich frage, wie er die Procedure im Speicher wiederfindet, wenn ich den Zeiger "genilt" habe und es keine class-Procedure ist.
Vermutlich wird sie nicht gefunden und deshalb kommt es zu der Zugriffsverletzung?
Nein, da Free eine Methode der untersten Basisklasse ist (TObject), weiss der Compiler immer, wohin er springen muss, nämlich nach TObject.Free. Ansonsten würde ja die Überprüfung auf nil in Free keinen Sinn ergeben. Im CPU-Fenster steht deshalb einfach "call TObject.Free".
Gruß
xaromz