c++复合类型(一):https://developer.aliyun.com/article/1436958
5. 共用体
共用体允许在相同的内存位置存储不同的数据类型,但一次只能使用一个成员。
- 定义:
union UnionName { type1 member1; type2 member2; ... };
- 特点:
- 成员共享内存。
- 同一时间只能存储一个成员的值。
示例代码:
#include <iostream> using namespace std; union Data { int i; float f; }; int main() { Data data; data.i = 10; // 赋值给 int 成员 cout << "Data.i = " << data.i << endl; data.f = 23.5; // 赋值给 float 成员 cout << "Data.f = " << data.f << endl; return 0; }
6. 枚举
枚举用于定义一组命名的整数常量。
- 定义:
enum EnumName { constant1, constant2, ... };
- 特点:
- 便于阅读和维护。
- 默认从 0 开始赋值。
示例代码:
#include <iostream> using namespace std; enum Color { red, green, blue }; int main() { Color c = blue; cout << "枚举值: " << c << endl; // 输出枚举值 return 0; }
7. 类
类是创建对象的模板,用于实现面向对象编程。
- 定义: class ClassName { accessSpecifier: type memberName; ... };
- 特点:
- 封装数据和函数。
- 支持继承和多态。
示例代码:
#include <iostream> using namespace std; class Box { public: double length; void setWidth(double wid) { width = wid; } double getWidth() { return width; } private: double width; }; int main() { Box box; box.length = 10.0; // 公共成员,可以直接访问 box.setWidth(5.0); // 私有成员,通过公共方法访问 cout << "盒子宽度: " << box.getWidth() << endl; return 0; }