Werde ich sofort ändern und austesten.
Schonmal danke.
---
Ich habe anstatt des Objekts nun einfach mal direkt einen Pointer an die Prozedur Add übergeben. Leider bekomme ich den Fehler immer noch.
Delphi-Quellcode:
procedure TObjList.Add(AItem: PObject);
begin
if FLength = FCapacity then
Grow;
FItems^[FLength] := AItem;
Inc(FLength);
end;
Hat noch einer eine Idee?
EDIT:
Ich habe meinen Fehler nun doch selber gefunden.
Ich habe in einer Schleife ein Objekt erzeugt und dieses bzw. später auch mal einen Zeiger auf dieses, an die Methode Add übergeben. Dabei ist, wie Der_Unwissende es schon richtig sagte, das TObject etc. an sich schon wieder ein Zeiger. Daher habe ich lediglich einen Zeiger auf den Zeiger, nicht jedoch einen Zeiger auf das Object selber in der Liste gespeichert.
Wer es sich nochmal genau anschauen möchte, kann sich die fertige Klasse in den nächsten Tagen auf meiner Homepage ansehen. Dort werde ich die alte aktualisieren. Dor war, wie ich festgestellt habe sogar noch ein kleiner Fehler drin.