我想知道,按以下方式组织数据是否可以接受?由于成员初始值设定项,结构不再是 POD 类型,并且编译器会发出有关忽略打包属性的警告。是否可以保证包装好?
struct StructOne
{
const quint8 h{0x11};
} __attribute__((packed));
struct StructTwo
{
const quint8 h{0x22};
} __attribute__((packed));
struct StructThree
{
quint8 s{0x33}
union
{
StructOne s1;
StructTwo s2;
} __attribute__((packed));
} __attribute__((packed));
struct Top
{
union
{
StructThree s3;
quint8 data[2];
} __attribute__((packed));
} __attribute__((packed));