enum Enums { k1, k2, k3, k4 };
union MYUnion {
struct U{
char P;
}u;
struct U0 {
char state;
} u0;
struct U1 {
Enums e;
char c;
int v1;
} u1;
struct U2 {
Enums e;
char c;
int v1;
int v2;
} u2;
struct U3 {
Enums e;
unsigned int i;
char c;
} u3;
struct U4 {
Enums e;
unsigned int i;
char c;
int v1;
} u4;
struct U5 {
Enums e;
unsigned int i;
char c;
int v1;
int v2;
} u5;
} myUnion
我对 C++ 中的 Union 的整个想法感到非常困惑。这个“myUnion”在内存中是什么样子的?我知道数据共享相同的内存块,但是如何?“myUnion”的大小是多少?如果是“u5”的大小,那么这块内存中的数据是如何分配的??