五、结构体和联合体
结构体是一种特殊形态的类,可以有自己的数据成员和函数成员,可以有自己构造函数折构函数,可以控制访问权限,可以继承,支持包含多态等。
结构体和和类具有不同的默认访问控制属性的成员,在类中,对于未指定访问控制属性的成员,其访问控制类型为私有类型;在结构体中,对于任何未指定访问控制属性的成员,其访问控制属性为私有类型。
struct 结构体名称
{
共有成员
protected:
保护成员;
private:
私有成员
};
联合体是一种特殊形态的类,它可以有自己的数据成员和函数成员,可以有自己的构造函数和折构函数,可以控制访问权限。联合体的全部数据成员共享同一组内存单元。
union 联合体名称
{
公有成员
protected:
保护型成员
private:
私有成员
};
联合体的各个对象成员,不能有自定义的构造函数、自定义的折构函数和重载的复制赋值运算符,不仅联合体的对象成员不能有这些函数,这些对象成员的对象成员也不能有这些函数。
联合体 不能继承,因而也不包含支持多态。