我正在编写一些代码并偶然发现这样的事情:
class Foo
{
private:
union {
byte bar;
struct {
byte baz1;
byte baz2;
};
};
};
现在,我在 VS 2010(纯非托管)下使用 4 级警告进行编译,当然 VS 抱怨无名结构/联合是非标准扩展(警告 C4201),我想修复该警告。
是否有任何理由有人更喜欢上述内容:
class Foo
{
private:
byte bar;
byte baz1;
byte baz2;
};
或者将前者更改为后者会破坏的任何原因?