AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Was sind Dynamische Arrays??

Ein Thema von Doenerimperator · begonnen am 30. Sep 2008 · letzter Beitrag vom 1. Okt 2008
Antwort Antwort
Gerome

Registriert seit: 4. Sep 2002
Ort: Server-Raum im Keller
317 Beiträge
 
#1

Re: Was sind Dynamische Arrays??

  Alt 30. Sep 2008, 20:51
Bei einem dynamischen Array ist der Name auch das Motto: Es ist in seiner Größe variabel.

Du kannst es deklarieren als "MeinArray : Array of Sonstwas" und wenn Du es brauchst, hast Du meist eine grobe Idee davon, wie groß es denn sein soll. Dann benutzt Du "SetLength(MeinArray, 5)" und setzt das Array damit auf eine Länge von 5 Elementen (die mit 0 bis 4 durchnummeriert werden).

Wenn Du später merkst, dass das eng wird, dann lässt Du einfach ein neues SetLength los und vergrößerst Dein Array auf diese Weise: "SetLength(MeinArray, 10)" vergrößert Dein Array um weitere 5 Elemente auf nun insgesamt 10 Elemente. Die bisherigen Elemente bleiben erhalten, es wird einfach "angebaut". Du kannst die Größe auch verringern, dann fallen ggf. Elemente "über den Tisch".


Problem an der Sache ist: Besonders effizient sind sie nicht, die dynamischen Arrays. Immer dann, wenn Du die Größe änderst, wird das Array im Speicher komplett umkopiert. Wenn Du diese Tatsache im Hinterkopf behältst und die Größe des Arrays eben nicht permanent änderst, sondern etwa immer gleich am Stück 10 oder meinetwegen auch 100 neue Elemente reservierst, kann man mit der "Nicht-Effizienz" oftmals leben. Fall nicht könnte man beispielsweise zu Listen greifen.
Es lebe der eigene Keller.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:40 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