編譯器警告 (層級 4) C4820
在建構 'member_name' 之後新增 'bytes' 位元組填補
元素的類型和順序導致編譯程式將填補新增至結構結尾。 如需結構填補的詳細資訊,請參閱 對齊 。
此警告預設為關閉。 如需詳細資訊,請參閱 預設為關閉的編譯器警告 。
下列範例會產生 C4820:
// C4820.cpp
// compile with: /W4 /c
#pragma warning(default : 4820)
// Delete the following 4 lines to resolve.
__declspec(align(2)) struct MyStruct {
char a;
int i; // C4820
};
// OK
#pragma pack(1)
__declspec(align(1)) struct MyStruct2 {
char a;
int i;
};