C++复合类型(四)
来源:互联网 发布:php一句话木马下载 编辑:程序博客网 时间:2024/05/20 00:35
4th 共用体
一个能存储多个指定类型中的一个的特殊结构体。
特征:能存储多个类型的数据,但是同一时间下只能存储一种类型的数据。
有点像杯子,可以装橙汁也可以装牛奶,但是它只能橙汁或牛奶,顶多就装个橙汁味的牛奶(或者说牛奶味的橙汁),但是绝对不可能左边装牛奶右边装橙汁。
共用体定义:
方法一:
union price
{
int p1;
double p2;
long p3;
float p4;
};
price pri;
方法二:
union price
{
int p1;
double p2;
long p3;
float p4;
}pri;
使用:
pri.p1=100;
//此时这个变量是整形的,里面的数据是100,p2、p3、p4不占据空间。
pri.p2=99.98;
//这个时候,pri.p1的数据已经丢失了,这个变量是双精度型的,里面的数据是99.98。
显然,共用体的长度是其最大成员的长度。而共用体的用途是可以在数据类型不确定的情况下节省空置的变量所占据的内存。
共用体和结构体混合:
struct fruit
{
std::string name;
int num;
union price
{
int p1;
double p2;
long p3;
float p4;
}pri;
};
fruit apple;
apple.pri.p1=16;
匿名共用体:
struct fruit
{
std::string name;
int num;
union price
{
int p1;
double p2;
long p3;
float p4;
};
};
fruit apple;
apple.p1=16;
//没有定义共用体名称作为中介,p1,p2,p3,p4是四个成员而不是一个成员,但是它们的地址相同。
By Little_Small_Joze and Katlynn 网络加速 kiwinimi.net
- C++复合类型(四)
- C++:复合类型
- 【c++】复合类型
- JavaScript语法详解(四)__复合类型
- C语言学习笔记(4)类型转化,复合类型
- C++Primer之复合类型
- 1.5 c++_复合类型
- 有章法的学习c++(9)复合类型(二)
- C语言学习笔记(五)——复合类型
- 学习C++——复合类型
- [c++primeplus6th]-第4章.复合类型
- 《c++primer笔记》复合类型--引用
- c++primer笔记--2.3复合类型
- c++primer学习笔记-----2.3复合类型
- c++primer plus复合类型之枚举
- c++primer plus复合类型之指针
- 复合文档格式(四)
- 记录类型(复合数据类型)
- python——图片爬虫:爬取爱女神网站(www.znzhi.net)上的妹子图 进阶篇
- java提高篇(一)-----理解java的三大特性之封装
- 保持冷静、继续前行——《白说》读后感
- JAVA ClassLoader加载类
- 情商4-委婉含蓄,命令的方式行不通
- C++复合类型(四)
- 【codevs 1557】热浪
- 《算法概论》习题8.14解答
- 关于Junit4笔记
- JAVA环境变量含义
- Win10&VS2017&OpenCV环境配置
- 学习javaScript的部分笔记,自己第一次写东西就当是个日记啦 一天进步一点点
- linux passwd命令解析示例
- Upgrade from Fedora 24 to Fedora 25, then Upgrade from Fedora 25 to Fedora 26