Entwickler-Ecke
Sonstiges (Delphi) - Array-Größe zur Laufzeit ändern
nuschii - Sa 27.07.02 21:25
Titel: Array-Größe zur Laufzeit ändern
Sers Leudz,
ich hätt da mal n kleines Problem:
Gibt es in Delphi, also Object Pascal eine Möglichkeit, die Größe eines im var-Block deklarierten Arrays zur Laufzeit zu ändern? In QBasic hätte ich jetzt einfach REDIM genommen... :?
see ya
Nuschii
DeCodeGuru - Sa 27.07.02 21:36
Hi,
natürlich geht das.
also, du deklarierst die Variable so:
Quelltext
1: 2:
| var myarray: array of Integer; |
Die Größe des Arrays kannste mit SetLength einstellen.
Jo, das müsste funktionieren.
GPF - Sa 27.07.02 21:53
Stimmt - der Befehl heißt allerdings SetLength - da hat sich nur ein l versehentlich eingeschlichen.
Um das Array zu 'leeren' benutze
SetLength(myarray, 0)
Die Anzahl der Elemente kannst Du über Length(myarray) erfahren.
Die Indizierung beginnt bei 0 und endet bei Length(myarray)-1
Nicht zwangsweise auf dynamische Arrays bezogen kannst Du auch low(myarray) und high(myarray) verwenden um die untere und obere Indexgrenze zu erfahren. Bei dynamischen Arrays liefert low(myarray) aber immer 0 und high(myarray) immer length(myarray)-1
Tino - So 28.07.02 08:35
Noch zu sagen das dieses Vorgehen erst mit Delphi 4 funktioniert.
Gruß
TINO
nuschii - So 28.07.02 19:18
Na gut, wenn das so einfach is... ich hätte ehrlich gesagt was ziemlich kompliziertes erwartet, wie das sonst bei Object Pascal oft der Fall ist.
Jedenfalls Danke für die Hilfe!
und @ all the admins: Ich muss euch ein großes Lob aussprechen. Das neue Delphi-Forum gefällt mir! Noch besser als das alte. Hier kann man wenigstens direkt mit posten loslegen. Beim alten Forum hab ich vergeblich auf eine Anmeldebestätigung gewartet :( . Also: weiter so!!!
see ya
Nuschii
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!