Ich glaub aber, deine Rechnung ist nicht ganz korrekt:
Delphi-Quellcode:
ARR2 = record
cont: Pointer;
strs: array of integer;
end;
ARR1 = array of ARR2;
Ein ARR2-Record belegt 8 Bytes. Die 24 Spalten extra sind nochmal 24*4 Bytes plus einen kleinen Overhead für die Größeninformation des 'strs'-Arrays, schätze ich. Macht also pro Record 104 Bytes. Sind dann immer noch 3MB plus -sagen wir- 200k für diesen Oberhead. Oder 400k oder 1MB, völlig wurscht.

Zitat von
blablab:
Ich brauch 88MB Arbeitsspeicher
Woher weisst Du das? Vielleicht ist hier dein Denkfehler? Und selbst wenn es so wäre. Was solls? Ksnn wirklich an der Speicherfragmentierung liegen.

Zitat von
blablab:
@alzaimar:Sorry, dass ich das net weiter rechtfertige, aber es ist kein Designfehler...
Wenn Du meinst.

Würde nur gern wissen, was derjenige, der sich das anschauen muss, verbrochen hat.