daß diese tdpockopt_ua eine Potenz von zwei ist?
tDockOpt_UA Das ist der ENUM und der hat keine Zweierpotenz.
Da wird einfach nur blind hochgezählt.
Und bei dem SET tDockOpt
s_UA ist das immer so.
1 Bit = ein Wert aus dem ENUM
Und Bits in einem Byte/Word/LongWord sind zufällig Zweierpotenzen, weil das für solche ordinalen Typen so definiert ist.
1-8 ENUM-Werte = 1 Byte im SET
9-16 ENUM-Werte = 2 Byte im SET
17-32 ENUM-Werte = 4 Byte im SET
33-64 ENUM-Werte = 8 Byte im SET
Bei
{$MinEnumSize 2}
für 1-8 ENUM-Werte =
2 Byte im SET.