Einzelnen Beitrag anzeigen

Benutzerbild von Gausi
Gausi
Online

Registriert seit: 17. Jul 2005
877 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Generische Objectlist: Itemcount <> Count?

  Alt 18. Feb 2022, 09:42
Items ist intern ein Array. Wenn ein Item hinzugefügt werden soll, aber das interne Array voll ist, muss das Array vergrößert werden. Da das ein relativ aufwändiger Prozess ist (d.h. O(n) Laufzeit, da ggf. das gesamte Array kopiert werden muss an eine Stelle im Speicher, wo ausreichend viel Platz am Stück verfügbar ist), wird das Array nicht um "1" vergrößert, sondern um einen gewissen Faktor, damit folgende Add-Operationen schneller durchgeführt werden können.

Diese "Kapazität" der Liste kann man über die Eigenschaft "capacity" auch gezielt abfragen oder setzen. Letzteres ist z.B. empfehlenswert, wenn man weiß, dass jetzt in einer Schleife 100.000 Elemente eingefügt werden sollen.

Du machst also nichts falsch, und das ist kein Bug, sondern ein Feature.
The angels have the phone box.
  Mit Zitat antworten Zitat