结构体和类
C++ / 结构体和类
50%
结构体基础
类与对象
练习例题
结构体简介
结构体是C++中的一种用户自定义数据类型,用于将不同类型的数据组合在一起。
// 结构体定义
struct Student {
string name; // 成员变量
int age;
double gpa;
};
// 创建结构体变量
Student student1;
student1.name = "张三"; // 访问成员
student1.age = 20;
student1.gpa = 3.8;
// 创建并初始化
Student student2 = {"李四", 22, 3.9};
// 结构体数组
Student class_roster[30];
// 结构体指针
Student* ptr = &student1;
cout << ptr->name; // 使用箭头操作符访问成员
cout << (*ptr).age; // 等价于 ptr->age
// 结构体作为函数参数
void printStudent(Student s) {
cout << "姓名: " << s.name << endl;
cout << "年龄: " << s.age << endl;
cout << "GPA: " << s.gpa << endl;
}
// 使用引用避免复制
void updateGPA(Student& s, double newGPA) {
s.gpa = newGPA; // 修改原始结构体
}
// 结构体中的函数
struct Rectangle {
double width;
double height;
// 结构体中的函数
double area() {
return width * height;
}
double perimeter() {
return 2 * (width + height);
}
};
- 结构体成员默认是公开的(public)
- 结构体可以包含函数(方法)
- 结构体可以有构造函数和析构函数
- 结构体与类的主要区别是成员默认的访问权限