Einzelnen Beitrag anzeigen

Benutzerbild von Binärbaum
Binärbaum

Registriert seit: 19. Jan 2005
Ort: Elstra
764 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Frage zu dynamischen Variablen

  Alt 22. Apr 2005, 22:58
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
There are exactly 10 kinds of people: those who understand binary, and those who don't.
---
"Software reift beim Kunden. Bei Hardware ist es anders: Hardware fault beim Kunden." - Rainer G. Spallek
  Mit Zitat antworten Zitat