Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
Delphi 12 Athens
|
AW: Risiko dyn.array als Funktionsrückgabewert ???
9. Mär 2012, 19:07
Gerade bei großen Datenmengen kann der Overhead des TList-Objekte schnell man nicht mehr ins Gewicht fallen.
Denn der reine Verwaltungsoverhead ist garnicht so groß. (nur ein paar wenig Byte)
Das Einzige, was größer auffallen könnte, ist eine Geschwindigkeits- und Speicheroptimierung.
So wird beim .Add nicht nur für das eine Feld Speicher reserviert, sondern gleich für ein paar mehr. Vorteil ist dann, daß bei den nächsten Add keine Speicheranforderungen mehr nötig sind, was das umkopieren des Speichers oftmals erspart.
Außerdem haben Liste auch andere Vorteile, was den größeren Overhead auch relativieren kann. (nette Funktionen, welche man nutzen kann)
Es kommt aber immer auf den Einzelfall an, denn eine TList ist intern auch "nur" ein Array
und je nach Anforderung hat alles mal seine Vor- und Nachteile.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
Geändert von himitsu ( 9. Mär 2012 um 19:11 Uhr)
|