Einzelnen Beitrag anzeigen

TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.942 Beiträge
 
Delphi 12 Athens
 
#1

Komisches mit variantem record

  Alt 17. Dez 2021, 14:54
Hallo,

ich nutze einen varianten Record um auch byteweise auf TDateTime zugreifen zu können.
Soweit so gut, Code siehe hier:

Delphi-Quellcode:
/// <summary>
/// Varianter Record für TDateTime um auf das auch byteweise zugreifen zu können
/// </summary>
TVariantDateTime = record
  case Bytewise: Boolean of
    /// <summary>
    /// Zeitstempel als Zeitstempel
    /// </summary>
    false : (TimeStamp:TDateTime);
    /// <summary>
    /// Zeitstempel als Bytes
    /// </summary>
    true : (Bytes:array[0..7] of UInt8);
end;

var
  dt:TVariantDateTime;
Wenn ich jetzt mit dem Debugger SizeOf(dt) abfrage kommt immer 16 raus,
statt der erwarteten 8. Frage ich SizeOf(dt.TimeStamp) ab, kommt 8 raus.

Warum?

Grüße
TurboMagic

Geändert von TurboMagic (17. Dez 2021 um 14:54 Uhr) Grund: Rechtschreibung.
  Mit Zitat antworten Zitat