编译器警告(等级 4)C4820
“member_name”构造后添加了“bytes”字节填充
元素的类型和顺序导致编译器在结构的末尾添加填充。 有关结构中的填充的详细信息,请参阅 align。
默认情况下,此警告处于关闭状态。 请参阅 默认情况下处于关闭状态的编译器警告 了解详细信息。
下面的示例生成 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;
};
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈