Delphi besitzt doch dynamische Arrays, wieso benutzt du diese nicht?
Damit kann man die Größe eines Arrays bestimmten.
Also setLength(meinArray, 10); vergrößert/verkleinert das Array auf 10 Elemente.
Um den reservierten Speicher wieder freizugeben, muss man die Größe auf 0 setzen. Also setLength(meinArray, 0);.