Union
联合体(union)是特殊的类类型,它在一个时刻只能保有其一个非静态数据成员.
联合体在 2023 年正式被加入 NOI 大纲入门级中.
定义联合体
联合体声明的类说明符与类或 结构体 的声明相似:
1 2 3 4 | |
联合体的定义与结构体类似.按照上述定义,MyUnion 同样可以当作一种自定义类型使用.名称 MyUnion 可以省略.
访问/修改成员元素
与结构体类似,同样可以使用 变量名.成员名 进行访问.
联合体所占用的内存空间大小 不小于 其最大的成员的大小,所有成员 共用内存空间与地址.当一个成员被赋值,由于内存共享,该联合体中的其他成员都会被覆盖.即同一时刻联合体中只能保存一个成员的值.
联合体的更多用法可以参见 cppreference:联合体声明.
Last updated on this page:, Update history
Found an error? Want to help improve? Edit this page on GitHub!
Contributors to this page:OI-wiki
All content on this page is provided under the terms of the CC BY-SA 4.0 and SATA license, additional terms may apply