Domanda

Visual C ++ ti permette di selezionare i membri struct alignemnt nella pagina delle proprietà del progetto. Il problema è che questa configurazione viene utilizzato per tutti i srtructs nel progetto.

C'è un modo (VC ++ specifico, direi) per impostare l'allineamento membro di un certo struct individualmente?

Altri suggerimenti

per davvero particolari allineamenti della struttura si può giocherellare con byte di riempimento

Quindi, aggiungere un paio di byte fittizi tra i vari campi, fino a quando l'allineamento si adatta alle vostre esigenze.

Esempio:

Esempio struct {     brevi x firmati;     byte dummy1;     byte dummy2;     byte dummy3;     byte dummy4;     byte dummy5;     byte dummy6;     unsigned int y; };

se non sarebbero stati collocati i byte fittizi, l'int sarebbe stato probabilmente luoghi di offset 4 (4 byte dall'inizio della struct, mentre ora è stato messo a compensare 8)

Fare attenzione: molto specifica del compilatore, e la pratica del codice cattivo; ^)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top