Moin...
Zitat:
Bei Aufrufen von TObject.Free und auch FreeAndNil ist die vorherige Prüfung auf Assigned überflüssig.
...ist schon richtig.
Aber wenn du ein Object mit Free wegschmeißt, dann ist das Object
nicht nil. Sondern ein "dangling pointer".
https://de.wikipedia.org/wiki/H%C3%A4ngender_Zeiger
...dann hast du wieder das gleiche Problem mit der Zugriffsverletzung beim Free.
Am Rande:
Persönlich habe ich mit Arrays keinen Vertrag. Man muß sich immer um die Größe kümmern. Ich stehe mehr auf Listen. Die verwalten sich selbst.
Tlist<> oder TObjectList<>