C++基础三——类、结构体、联合体
类与结构体的区别:
对于未指定访问控制属性的成员,在类中默认是私有的(private),在结构体中默认是公有的(public)。
在C++的结构体中,可以定义函数成员,而C中只能定义变量成员。
union 联合体
联合体的内存分配为占用字节数最多的变量,如下,将分配4个字节:
union Mark{
char grade; //占用1个字节
bool pass; //占用1个字节
int percent; //占用4个字节
};
联合体变量中的成员至多只有一个有效。
无名联合:
union{
int i;
float f;
}
应用举例:成绩登记的方式:1.int 记分 2.bool 通过 3.int percent
在程序中可以这样使用:
i=10;
f=6.6; //由于共用存储空间,则 i 变量将失效