Einzelnen Beitrag anzeigen

jbg

Registriert seit: 12. Jun 2002
3.483 Beiträge
 
Delphi 10.1 Berlin Professional
 
#3

Re: dynamisches Array -> setLength Problem

  Alt 10. Feb 2004, 13:44
Zitat von Wegalt:
Wenn ich aber mein Array in der Größe immer um eins erhöhe frißt dieses unmengen von Arbeitsspeicher.
Grob geschätzt frißt das Array dann Fakultät(Length(A)) * SizeOf(A[0]) Bytes.

Zitat:
Gibt es eine Möglichkeit mein Array zu reorganisieren und damit den Speicherverbrauch zu senken, ohne das ich die Daten in ein weiteres Array kopieren muß, also in eins wo die größe vor der Befüllung feststeht?
Du könntest so arbeiten, wie es TList und TStringList macht. Einfach das Array um einen festen Delta-Wert erhöhen und eine Variable Len mitlaufen lassen, die die effektive Länge des Arrays enthält. Zum Schluss setzt du dann die tatsächliche Länge des Arrays auf die effektive Länge.
  Mit Zitat antworten Zitat