array länge zur laufzeit um 1 erhöhen
hallo,
ich bins nochmal. wie kann ich mein array zur laufzeit erhöhen??? also ich meine die länge. die inhalte, die schon drinn gespeichert sind, soll erhalten bleiben. wie mache ich das |
Re: array länge zur laufzeit um 1 erhöhen
Dynamisches Array:
Delphi-Quellcode:
Statisches Array: gar nicht.
SetLength(Ar, Length(Ar)+1);
Und fuers naechste Mal: Bitte suchen ;) Greetz alcaeus |
Re: array länge zur laufzeit um 1 erhöhen
Du brauchst dazu ein dynamisches Array:
Delphi-Quellcode:
Zu Anfang ist dieses leer und hat die Länge 0, mit Length kannst du die Größe ermitteln, mit SetLength festsetzen. Wichtig: Das Array beginnt immer mit dem Index 0!
var IntegerArray: Array of Integer
Delphi-Quellcode:
SetLength(IntegerArray,10);
for i:=0 to Length(IntegerArray)-1 do //oder auch High(), also von 0 bis 9 IntegerArray[i]:=i; ShowMessage(IntToStr(IntegerArray[Random(10)])); SetLength(IntegerArray,0); |
Re: array länge zur laufzeit um 1 erhöhen
Wahlweise kann man auch folgendes verwenden:
Delphi-Quellcode:
Die Funktion High gibt bei Arrays immer den höchsten Index zurück und bei dynamischen Arrays gilt somit:
var IntArray: Array of Integer
... SetLength(IntArray,High(IntArray)+2);//Array um ein Element vergrößern
Code:
MfG
Length(IntArr) = High(IntArr)+1
Binärbaum |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:35 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz