Zitat von
QuickAndDirty:
Könnte es sein das dieser fehler nur dann passiert wenn du das letzte verbleibende element aus dem array löschst?
Das DynArray wird nämlich über ein Interface auf @$00000000 gesetzt wenn alle element entfernt wurden.
sprich es wird freigegeben wenn der Referenzzähler 0 erreicht.
Hm... nein, eben das nicht. Wenn ich das letzte lösche tritt da nie der Fehler auf, was ich allerdings etwas seltsam finde... daher verstehe ich auch nicht ganz warum es nicht klappen will.
PS: Kann es eventuell an meiner eigenen Destroy-Procedure liegen?! Die schaut nämlich wie folgt aus:
Delphi-Quellcode:
procedure TMyClass.Destroy;
begin
// FSub -> Unterklasse von TMyClass
FSub.Free;
// FTest -> Variable von Typ TMyClass
FTest.Free;
inherited Destroy;
end;
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)