C++ 结构体
结构体(struct)是C++中用于组合多个不同类型数据的复合数据类型。它允许你将相关的数据项组织成一个单一的单元,是面向对象编程中类(class)的前身。
在前期可以就认为结构体和类是一回事。至于区别,可以这么理解:
-
做题的时候为了编码高效简洁用结构体struct
-
写项目的时候用类class
定义一个结构体
// 定义一个学生结构体
struct Student {
int id; // 学号
string name; // 姓名
int age; // 年龄
float score; // 成绩
}; // 注意分号不能省略
//定义一个日期结构体,并创建一个默认结构体实例
struct Date{
int year,month,day
}today;
结构体的核心特性
- 成员变量:可以包含任意数量的不同类型数据成员
- 访问权限:默认所有成员都是public(与class不同)
- 内存布局:成员在内存中按声明顺序连续存储
- 灵活性:支持数组、指针甚至嵌套其他结构体
创建实例和初始化
创建结构体实例,一是用上面的创建时候带上,二就是和普通变量一样的用法了。
可以选择给成员变量单独赋值,也可以在创建的时候一把赋值。
struct Date{
int year,month,day;
}today;
int main(){
//创建一个结构体变量
Date tomorrow;
//给成员变量赋值
tomorrow.year=2025;
tomorrow.month=5;
tomorrow.day=16;
//还可以按照成员变量的顺序赋值,注意顺序
Date yesterday={2025,5,14};
return 0;
}
另外创建结构体的时候,也可以变量初始值。
struct Date{
int year=2000;
int month=1;
int day=1;
};

浙公网安备 33010602011771号