![]() |
Arraylänge ermitteln
Hi,
hoffe erstmal, dass es wirklich nach Sonstiges gehört. War mir nich ganz sicher ob vielleicht doch nach Delphi- Language. Aber naja, zu meinem Problem. Ich habe einen dynamischen Array, dessen Länge ich verändere. Geht ja ganz normal mit Setlength. Jetz will ich aber gerne (und möglichst ohne meine Setlength- Veränderungen global festzuhalten) an gewissen Stellen die Länge des Arrays rausfinden. In so Sprachen wie Java gibts ja einfach die Eingenschaft length eines jeden Arrays, hier aber nich. Und GetLength scheints auch nicht zu geben... Muss ich also doch in einer globalen Variable immer mitschreiben, was ich gerade mit Setlength mache? Oder gehts doch irgendwie? Bis dann, S - tefano |
Zitat:
Delphi-Quellcode:
length(arr);
|
:wall:
Sorry, war wohl etwas spät... |
Moin Stefano,
wenn Du ein dynamisches Array verwendest weisst Du ja von vorn herein nicht, wie gross das Array werden muss. Sollte sich die Grösse ständig ändern müssen, wäre es dennoch sinnvoller das Array lieber erst einmal zu gross zu deklarieren, und nur im Notfall die Grösse zu verändern, und einen Index auf den letzten benutzten/ersten freien Eintrag selber mitzuführen. Würdest Du jedes Mal, wenn ein Eintrag hinzugefügt wird die Grösse um eins verlängern, müsste i.d.R. jedesmal das Array auf einen neuen Platz umkopiert werden (intern), damit noch ein Feld dahinterpasst. |
high und low geben die oberen und unteren grenzen eines arrays an,
length gibt damit die länge des arrays an. deshalb muss man bei dyn arrays auch immer length -1 verwenden, was bei high entfällt |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:08 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz