Thema: Delphi File of eigener Typ

Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

Re: File of eigener Typ

  Alt 26. Mai 2010, 09:21
Zitat von Chemiker:
für die Deklaration des Records sollte man, wenn man in speichert mit packed arbeiten.
Sowas sollte man eh immer machen, sobald Daten übertragen oder gespeichert werden sollen,
also sobald Daten den Prozess/die Programminstanz, das Modul (EXE/DLL) verlassen.

Ebenso sollte man nur statische Typen nehmen.

z.B. Integer und Char können sich ja schnell mal in der nächsten Delphi-/Compilerversion verändern
(ein gutes Beispiel sind die vielen Unicode-Probleme mit alten Programmen/Codes, seit Delphi 2009)

Zitat von Chemiker:
In Deinen Beispiel würde man 7Byte pro Datensatz sparen.
Aber dennoch würde ich eine "ordentliche" Speicherausrichtung nicht übergehen und hierbei manuell für die

Delphi-Quellcode:
TNote = 1..6;
TBuch = packed record 8 Byte-Align 4 Byte
  Titel: String[51]; // 52 Byte = 6,5 > 6,5 = 13 >13
  Autor: String[51]; // 52 Byte = 6,5 >13 = 13 >26
  Erscheinungsjahr: TDate; // 8 Byte = 1 >14 = 2 >28
  DatumEintrag: TDate; // 8 Byte = 1 >15 = 2 >30
  ISBN: LongInt; // 4 Byte = 0,5 >15,5 = 1 >31
  Kommentar: String[105{oder 97}]; // 106 Byte = 13,25 >28,75 = 26,5 >57,5
  Bewertung: TNote; // 1 Byte = 0,125>28,875 = 0,25>57,75
  Privat: Boolean; // 1 Byte = 0,125>29 = 0,25>58
end;
Für 'nen 32-Bit-Prozess also eine passende Ausrichtung.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat