我工作的一些代碼,碰上這樣的事:無名結構/聯合爲類私有成員
class Foo
{
private:
union {
byte bar;
struct {
byte baz1;
byte baz2;
};
};
};
現在,我與警告級別4編譯VS 2010下(純非託管)和當然VS抱怨說,無名結構/聯合是一個非標準的擴展(警告C4201),我想修復這個警告。
沒有任何理由可言有人寧願上面:
class Foo
{
private:
byte bar;
byte baz1;
byte baz2;
};
或者任何理由改變前者向後者將打破?
建議的修復程序的內存佈局完全不同。 – ildjarn