Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#10

AW: Wie kann man Informationen eines Arrays ermitteln?

  Alt 10. Sep 2022, 17:18
bei statischen Arrays geht es.

T = array[x..y] of array[x..y] of array[x..y] of double;

SizeOf(T) ist "dort" Alles.




Nein, SizeOf(Input) ist die Größe der Variable, welche auf das Array zeigt.
Und das sind immer 4 Byte, bzw. 8 Byte bei 64 Bit, da es einem SizeOf(Pointer) entspricht.

"IN" dem Array liegen aber vor dem Pointer, also vor dem ersten ArrayFeld @Input[0], noch die Verwaltungsdaten, welche TypInfo, Length und mehr enthalten (nur bei Length=0 gibt es das nicht), da Dieses z.B. für Copy und am Ende auch das FreeMem der Variable benötigt werden.

* für Größe der Daten in den Arrays, ist das unwichtig
* aber für Gesamtspeicher im RAM belegt es natürlich auch etwas
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (10. Sep 2022 um 17:23 Uhr)
  Mit Zitat antworten Zitat