Zitat von
schöni:
Hallo Nicodius!
So sieht also Dein dynamisches Array aus.
Delphi-Quellcode:
procedure TParse.CreateVar(varT : Variant);
begin
setLength(arr, high(arr)+1);
arr[high(arr)] := varT;
end;
Du mußt schon vorher wissen, wie groß das Array "arr" werden soll. Wenn Du es dynamisch anlegst, muß zur Laufzeit zu dem Zeitpunkt, an dem das Array gebraucht wird, seine Größe bekannt sein. Wenn Du beispielsweise Deine 5 Variablen in diesem Variant-Array speichern
willst, mußt Du 5 Elemente anlegen.
Delphi-Quellcode:
procedure TParse.CreateVar(varT : Variant);
begin
setLength(arr, 5);
arr[ { high(arr) } 5 ] := varT; //Ich glaube nicht, das die Funktion High() auf dynamische
end; //Arrays anwendbar ist
Statt der Zahl 5 mußt Du in Deinem Programm natürlich ne Zählvariable nehmen. Sonst kannste auch gleich ein statisches Array nehmen.
Ich hoffe, das hilft erst mal
schöni
Da muss ich mal was korrigieren
1. High()
ist auf dynamische Arrays anwendbar.
2. In deinem Beispiel müsste es
arr[4] := varT;
heißen, da der Index bei dynamischen Arrays immer von null bis n-1, also hier bis 4, läuft.
MfG
Binärbaum