Packed/de

From Lazarus wiki

Deutsch (de) English (en) русский (ru)

Zurück zu den reservierten Wörtern.

Das reservierte Wort packed weist den Compiler an, für das Objekt sowenig Speicher wie möglich zu verwenden.
Das wird dadurch erreicht, das zwischen einzelnen Elementen kein Zwischenraum gelassen wird.
D. h. die einzelnen Elemente werden auch an ungeraden Speicheradressen ausgerichtet.

Beispiel:

  type TPArray = Packed array[...] of ...;
  type TPClass = Packed class  ... end;
  type TPObject = Packed object ... end;
  type TPRecord = Packed record ... end;



Es ist auch bitweises Packen möglich, dies geschieht mit bitpacked.
Das Array a0 ist ein Byte groß.
Das normal deklarierte a1 aber 8 Byte.

var
  a0: bitpacked array[0..7] of Boolean; // 1 Byte
  a1: array[0..7] of Boolean;           // 8 Byte