Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

Re: allg. Fragen zu Records

  Alt 22. Mär 2004, 19:14
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)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat