Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by himitsu,
21. Okt 2017
Warum durchtesten?
Wenn das "veränderliche" {$ALIGN} bekannt ist, kann ich meistens sofort sagen, wie das ausgerichtet wird
Wenn man das "einfache" System erstmal verstanden hat, ist es garnicht mehr so schwer.
Nur beim Typen Extended vergesse ich ständig, wie dieser krumme 10-Byte-Typ gerechnet wird. :oops:
PS: Das Selbe betrifft natürlich auch die Felder in Objekten (unter Betrachtung...
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by himitsu,
20. Okt 2017
Arrays sind Packed, aber wenn der Field-Typ unpacked ist und eine unrunde Größe hat (z.B. 3 Byte Inhalt, aber 4 Byte groß), dann ist das Array natürlich auf die 4 Byte ausgerichtet.
Es gibt kein MinAlign, sondern nur ein MaxAlign, als Compiler-Option.
2 Byte passen "genau" in ein Word, also richten sie sich immer doppelt übereinander aus, egal ob packed oder nicht.
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by himitsu,
20. Okt 2017
Es sind alles Bytes, somit ist es praktisch immer packed.