Ja, da hast Du wohl recht. Die ersten grundlegenden Definitionen (kann man wohl ein wenig sehen) stammen noch aus ca. 1995...
Ich kann nun zwar das wie sonst auch machen (zumindest gerade mal unter Windows getestet):
Delphi-Quellcode:
for L := 0 to TerminList.count - 1 do begin
TTermin(TerminList[L]).Free;
end;
Weil Delphi das wohl selber regelt:
Delphi-Quellcode:
procedure TObject.Free;
begin
// under ARC, this method isn't actually called since the compiler translates
// the call to be a mere nil assignment to the instance variable, which then calls _InstClear
{$IFNDEF AUTOREFCOUNT}
if Self <> nil then
Destroy;
{$ENDIF}
end;
Ein einfaches
Terminlist.clear;
lässt das Programm aber abstürzen.
Warum ist das so, bzw. wie setze ich die Liste wieder auf Null Elemente zurück?