Forum: Algorithmen, Datenstrukturen und Klassendesign
by striderx,
26. Jun 2018
@p80286
Um die Aufgabenstellung noch einmal in Erinnerung zu rufen: ich möchte ein Integer-Feld durch einen ein Byte großen Enum-Typen ersetzen und das muss kompatibel zu den bislang vorhandenen Daten sein.
Auch scheint mir das 'packed' hier etwas redundant, da das Ergebnis ja dasselbe ist wie 'unpacked' und ohne Füller,
@mavarik
dann passen die vorhandenen Daten wiederum nicht.
Forum: Algorithmen, Datenstrukturen und Klassendesign
by striderx,
26. Jun 2018
Die Daten sind mit dem ungepackten Format gespeichert worden. Wenn ich jetzt versuche, sie in das gepackte Format einzulesen, passt das nicht mehr.
Ich könnte natürlich eine Konvertierungs-Routine schreiben, aber bei 8 Varianten mit jeweils 30 Feldern suche ich halt nach einem Weg, der deutlich weniger aufwändig ist.
Forum: Algorithmen, Datenstrukturen und Klassendesign
by striderx,
26. Jun 2018
Dann passen aber die vorhandenen Daten nicht mehr dazu ...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by striderx,
26. Jun 2018
Hm, das ist ja interessant.
Der Hintergund für meine Frage: Ich möchte bei einem varianten Record den Integer in Rec3 durch einen Enum-Typen (< 255) ersetzten. Derzeit habe ich mir damit beholfen, dass ich den Enum-Typen mit {$Z4} auf eine Größe von vier Bytes zwinge.
Wie ich ausprobiebert habe, müsste das auch mit folgender Deklaration gehen:
tRec2 = record
S1: string;
...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by striderx,
26. Jun 2018
Hallo zusammen,
Wenn ich mit SizeOf die Größe der Records
tRec1 = record
I: Integer;
end;
tRec2 = record