这段代码在C下面可以直接写B1 B2 B3, 但是在C++下,不允许白字直接访问,必须放在对应的namespace里,但对应的namespace是什么呢?
struct A { int X; union { struct B { enum { B1, B2, B3 } ABCD; }v2; } v; };
业精于勤,荒于嬉;行成于思,毁于随。
A::B::B1A::B::B2A::B::B3
int main(){
A::B::ABCD dd = A::B::B1; return 0;
}
A::B::B1
A::B::B2
A::B::B3
int main()
{
}