Einzelnen Beitrag anzeigen

tommie-lie
(Gast)

n/a Beiträge
 
#9

Re: Wie funktioniert SizeOf() intern?

  Alt 14. Sep 2005, 19:04
Zitat von Hansa:
Und das packed wird wohl [...] gleichzeitig einen erhöhten Verwaltungsaufwand für den Deklarations-Baum bedeuten.
Für den Deklarationsbaum selbst wird es wohl keinen Unterschied machen, ich denke mal der Compiler bastelt sich erst seine Typen und Strukturen zusammen. Aber zur Laufzeit ist es ein erhöhter Aufwand beim Zugriff auf einzelne Elemente, weil eben das Alignment fhelt und die richtigen Bits aus dem Speicher gepult und zusammengesetzt werden müssen.

Zitat von Hansa:
Habe noch nie packed gebraucht.
Dann hast du wohl noch nie von C oder anderen Sprachen auf Records in Delphi-Code zugegriffen, dort braucht man es nämlich zum Beispiel. Daher sollten auch alle Records, die man an API-Funktionen schickt, auch als packed deklariert sein, wenn man sich die API-Funktionen selbst importiert.

Zitat von Hansa:
Ähh, wer so mit englischen Wörtern um sich schmeißt, der soll sie bitte mal erklären. Allerdings nicht mit neuen Pseudo-Fachbegriffen.
Das ist kein Pseudo-Fachbegriff, sondern ein Defakto-Fachbegriff. Eine Suche in deiner Online-Hilfe (mindestens bei Delphi <= 7, die von Delphi2005 kenne ich nicht, habe aber nur schlechtes über sie gehört ) hätte dir verraten, was Alignment ist, ebenso wie ein Blick in die Kontexthilfe des Projekteigenschaften-Dialogs, wo du das Alignment einstellen kannst.
Und weil ich jetzt zu faul bin, extra Windows zu booten nur um dir etwas aus der Windows-Hilfe abzutippen, überlasse ich dem werten Leser diese Aufgabe als kleine Übung.
  Mit Zitat antworten Zitat