Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Dynamsches Array von meinem Record-Typ (https://www.delphipraxis.net/43971-dynamsches-array-von-meinem-record-typ.html)

Binärbaum 11. Apr 2005 15:03

Re: Dynamsches Array von meinem Record-Typ
 
Zitat:

Zitat von RavenIV
Zitat:

Zitat von Binärbaum
AFAIK verwendet TList intern auch nur dyn. Arrays, also macht das keinen so großen Unterschied.

aber die Verwaltung einer TList ist einfacher...

Ja, für den Programmierer.
Aber wenn man z.B. 50 Elemente mit Add() hinzufügewn will, wird da 50 mal SetLength aufgerufen.
Wenn man das aber mit einem Array von Hand macht, kann man mit einem Aufruf von SetLength den Array um 50 Elemente vergrößern ;-)

MfG
Binärbaum

RavenIV 11. Apr 2005 15:07

Re: Dynamsches Array von meinem Record-Typ
 
aus der OnlineHilfe von Delphi:
Zitat:

Die Eigenschaft Capacity gibt die zugewiesene Größe des Zeiger-Arrays an, das vom TList-Objekt verwaltet wird.

Delphi-Syntax:

property Capacity: Integer;

C++ Syntax:

__property int Capacity = {read=FCapacity, write=SetCapacity, nodefault};

Beschreibung

Mit Capacity wird die Anzahl der Zeiger vorgegeben, die in der Liste enthalten sein müssen. Wenn nicht genügend Speicher vorhanden ist, um die Liste auf ihre neue Größe zu erweitern, tritt eine EOutOfMemory-Exception auf.

Capacity kann gelesen werden, um die Anzahl der Objekte zu ermitteln, die in der Liste Platz finden, ohne dass weiterer Speicher reserviert werden muss. Verwechseln Sie aber Capacity nicht mit der Eigenschaft Count. Diese gibt die Anzahl der Einträge in der Liste an. Daher ist der Wert von Capacity immer größer oder gleich Count. Wenn Capacity größer als Count ist, kann der nicht genutzte Speicher freigegeben werden, indem Capacity der Wert von Count zugewiesen wird.

Wird ein Element zu einer Liste hinzugefügt, die bereits vollständig gefüllt ist, wird der Wert von Capacity automatisch erhöht. Allerdings lässt sich die Anzahl der Speicherzuweisungen verringern und damit die Leistung der Anwendung erhöhen, indem die Eigenschaft Capacity mit einem größeren Wert belegt wird, bevor Objekte hinzugefügt werden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:31 Uhr.
Seite 2 von 2     12   

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