Nein, die sind nicht automatisch sortiert.
Die Reinfolge ist die, die auch bei der Recorddefinition verwendet wird.
Der Daten, die im Record gespeichert erden, stehen einfach in einer Reihe im Speicher.
Die Namen von Variable werden ja in Delphi nicht gespeichert.
Code:
Test: packed Record Test: Record
C: Byte; C: Byte;
B: Word; B: Word;
A: String; A: String;
D: Byte; D: Byte;
End; End;
Byte's Was Byte's Was
1. C 1. C
2.-3. B 2.-3. frei
4.-7. A 4.-5. B
8. D 6.-7. frei
8.-11. A
12. D
13.-16. frei
Vom String (AnsiString) steht nur der Zeiger auf den String im Record.
Der String selber steht dann an der im Zeiger angegebenen Position. (4 Byte Referenzzähler + 4 Byte Stringlänge + x Byte Stringdaten)