Ostrzeżenie kompilatora (poziom 1 i poziom 3) C4359
"type": rzeczywiste wyrównanie (8) jest większe niż wartość określona w __declspec(align())
Wyrównanie określone dla typu jest mniejsze niż wyrównanie typu jednego z jego elementów członkowskich danych. Aby uzyskać więcej informacji, zobacz wyrównanie.
Przykład
Poniższy przykład generuje kod C4359.
// C4359.cpp
// compile with: /W3 /c
struct __declspec(align(8)) C8 { __int64 i; };
struct __declspec(align(4)) C4 { C8 m8; }; // C4359
struct __declspec(align(8)) C8_b { C8 m8; }; // OK
struct __declspec(align(16)) C16 { C8 m8; }; // OK