C++的联合体union

联合体有点像class类型或者struct类型,只不过它一次只占用一个成员的内存。

通常我们有一个结构体,声明了4个浮点数,那么结构体中就有4*4=16字节。当我们不断向类或者结构体中添加成员时,其大小也会不断增大。

union只有一个成员,如果我们在联合体中声明4个浮点数abcd,联合体的大小仍然是4个字节。当我尝试去改变它们的数值,它们的内存都是一样的,如果a的值是5,那么d的值也是5.

当我们想给同一个变量起两个名字时,union真的很有用,比如我们声明了一个数学向量xyz,我们也可以用这个向量表示颜色rgb

通常union是匿名使用的,但是匿名union不能含有成员函数

相关推荐
码兄科技2 小时前
Java AI智能体开发实战:从零构建智能对话系统指南
java·开发语言·人工智能
问君能有几多愁~2 小时前
C++ 数据结构复习笔记
数据结构·c++·笔记
tntxia3 小时前
C++ 基础教程:从入门到精通
c++
Drone_xjw3 小时前
从 GDB 到 CDB:C/C++ 程序调试的两把“手术刀”
c语言·开发语言·c++
SL-staff3 小时前
智慧园区2000+设备统一管理:JVS-IoT如何降低运维成本40%
java·开发语言·物联网·智慧园区·设备管理·运维优化·jvs-iot
2zcode5 小时前
基于MATLAB图像处理的饮料瓶灌装液位检测系统设计与实现
开发语言·图像处理·matlab
必须得开心呀6 小时前
QT解决中文乱码问题
开发语言·qt
熊猫_豆豆6 小时前
QT6 Android C++ 自制美观闹钟
android·c++·qt·闹钟
随意起个昵称7 小时前
状压dp-基础题目2([USACO12MAR] Cows in a Skyscraper G)
c++·算法·动态规划
这不小天嘛7 小时前
JAVA八股——redis篇
java·开发语言·redis