union是一种特殊的数据存储机制
    共用体是一种特殊的类,每次只有一个非静态数据成员处于活动状态。因此,共用体与类一样, 可包含多个数据成员,但不同的是只能使用其中的一个

    要声明共用体,可使用关键字 union,再在这个关键字后面指定共用体名称,然后在大括号内指定 其数据成员:

    1. union UnionName {
    2. Type1 member1;
    3. Type2 member2;
    4. TypeN memberN;
    5. };

    优点是内存使用更为精细灵活,也节省了内存空间。

    要实例化并使用共用体,可像下面这样做:

    1. UnionName unionObject;
    2. unionObject.member2 = value;

    在什么情况下使用共用体
    在结构体中,常使用共用体来模拟复杂的数据类型。共用体可将固定的内存空间解释为另一种类型, 有些实现利用这一点进行类型转换或重新解释内存,但这种做法存在争议,而且可采用其他替代方式。

    注意 目前 共用体不够类型安全