C++联合体union

联合体

将多个类型合并到一起省空间

枚举与联合一起使用

匿名联合

类似于无作用域

C++11联合体定义非内建类型

C++11 引入了能够在联合体中使用非内建类型的能力,这些类型包括具有自定义构造函数、析构函数、拷贝构造函数和拷贝赋值运算符的类。

关键特性

构造和析构:在联合体中使用具有非平凡构造函数和析构函数的类型时,必须显式地调用这些函数。这是因为联合体不会自动调用成员的构造函数和析构函数。

有限的类型:虽然 C++11 允许在联合体中使用更复杂的类型,但并不是所有类型都可以用。特别是,不能在联合体中使用具有虚函数或虚基类的类型。

显式管理:你需要手动管理联合体中对象的生命周期,包括合适地调用构造函数和析构函数。

使用类管理union成员

类可以在某个函数的内部

相关推荐
小珑也要变强32 分钟前
队列基础概念
c语言·开发语言·数据结构·物联网
未来可期LJ2 小时前
【C++ 设计模式】单例模式的两种懒汉式和饿汉式
c++·单例模式·设计模式
Trouvaille ~2 小时前
【C++篇】C++类与对象深度解析(六):全面剖析拷贝省略、RVO、NRVO优化策略
c++·c++20·编译原理·编译器·类和对象·rvo·nrvo
little redcap2 小时前
第十九次CCF计算机软件能力认证-乔乔和牛牛逛超市
数据结构·c++·算法
AI原吾3 小时前
掌握Python-uinput:打造你的输入设备控制大师
开发语言·python·apython-uinput
机器视觉知识推荐、就业指导3 小时前
Qt/C++事件过滤器与控件响应重写的使用、场景的不同
开发语言·数据库·c++·qt
毕设木哥3 小时前
25届计算机专业毕设选题推荐-基于python的二手电子设备交易平台【源码+文档+讲解】
开发语言·python·计算机·django·毕业设计·课程设计·毕设
珞瑜·3 小时前
Matlab R2024B软件安装教程
开发语言·matlab
weixin_455446173 小时前
Python学习的主要知识框架
开发语言·python·学习
孤寂大仙v3 小时前
【C++】STL----list常见用法
开发语言·c++·list