Alignment und typensicherheit
-
Hi,
ist es denn möglich das Alignment an einen Datentypen zu binden ??
Also dass man sowas sagt: Wenn sich das Alignment unterscheidet, unterscheidet sich auch der Typ ??
Viele Gürße
-
AlexanderKiebler schrieb:
Also dass man sowas sagt: Wenn sich das Alignment unterscheidet, unterscheidet sich auch der Typ ??
Ist das nicht so? Das Alignment ist eine Eigenschaft des Typs, also muss es wohl.
-
Um ehrlich zu sein habe ich es nicht getestet.
Ich habe ein stück code gesehen, in welchem Typenchecks zur laufzeit gemacht werden.Ich dachte der Grund dafür wäre das Alignment. Ansonsten sollten Typechecks doch nicht zur laufzeit stattfinden.
Zumal sie bei uns an der stelle sehr leicht vermeidbar gewesen wären....
Ich dachte das kann nur daran liegen, dass sie das alignemnt testen wollen.
Aber danke für die schnelle Antwort
-
Alignment sollte zur Compilezeit bekannt sein.
-
Bashar schrieb:
AlexanderKiebler schrieb:
Also dass man sowas sagt: Wenn sich das Alignment unterscheidet, unterscheidet sich auch der Typ ??
Ist das nicht so? Das Alignment ist eine Eigenschaft des Typs, also muss es wohl.
Alignment ist eine Eigenschaft der Adresse

Davon abgesehen...
Jeder Typ hat genau ein "Static Alignment Requirement". Also das Alignment das der Typ immer und in jedem Fall mindestens braucht.Variablen/Member/... können aber grössere, kompatible Alignment Requirements haben als ihr Typ, und zwar dann wenn sie mit
alignas(IntegerKonstante)deklariert werden.http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2140.pdf
EDIT: verdammte dass/das Fehler ...
-
Ist es eine gute Idee, Big-Littel-Endian Byteswapperei mit
dem Adressierungsmod (Alignment) zu lösen wenn es der Prozessor
explizit untersützt ??
-
Zeig mal Beispiel, ich versteh net was du meinst/wie das gehen soll.