AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Was bringt ein "packed" bei "record packed"?
Thema durchsuchen
Ansicht
Themen-Optionen

Was bringt ein "packed" bei "record packed"?

Ein Thema von Helmi · begonnen am 2. Jan 2009 · letzter Beitrag vom 2. Jan 2009
 
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Was bringt ein "packed" bei "record packe

  Alt 2. Jan 2009, 10:14
Nehmen wir an es gibt einen 64-Bit Compiler. Dort wird das Alignment bei 64-Bit liegen und nicht bei 32-Bit. Jetzt hast du folgenden Record deklariert:
Delphi-Quellcode:
TKontakt = record
  Name: String[25];
  Vorname: String[15];
  Telefonnumer: String[12];
end;
Diesen schreibst du in eine Datei und liest ihn auch wieder aus. Kompilierst du dein Programm mit einer 32-bittigen Ausrichtung klappt alles wunderbar. Jetzt hast du einen 64-Bit Compiler und compilierst das Programm neu. Schon hast du nur noch Datenmüll beim Lesen, weil die Daten mit einer 32-Bit Ausrichtung geschrieben wurden. Das kann man natürlich beheben, in dem man per Compilerschalter wieder eine 32-Bit Ausrichtung erzwingt. Aber denkt man auch daran? Oder sucht man den Fehler an allen möglichen anderen Stellen? Und solche Probleme erspart man sich, wenn man den Record als packed deklariert, dann kann man das Programm mit jeden beliebigen Alignment kompilieren und es funktioniert. Ist sinnvoll, wenn man Prgrammcode weitergibt oder mit anderen Programmierer zusammenarbeitet. Erspart eben viel Ärger. Und wenn man in eine Datei schreibt, wird der Overhead auch kleiner.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz