定义一个类 Student,使用非静态成员函数、静态成员函数和静态数据成员计算学生某门课程的总成绩,并在主函数中进行测试
时间: 2023-02-07 15:32:52 浏览: 129
下面是一个简单的示例:
```cpp
#include <iostream>
class Student {
public:
// 非静态成员函数
void setName(std::string name) {
this->name = name;
}
void setScore(int score) {
this->score = score;
}
// 静态成员函数
static int getTotalScore(Student* students, int n) {
int total = 0;
for (int i = 0; i < n; i++) {
total += students[i].score;
}
return total;
}
private:
std::string name;
int score;
// 静态数据成员
static const int fullScore = 100;
};
int main() {
Student students[3];
students[0].setName("张三");
students[0].setScore(80);
students[1].setName("李四");
students[1].setScore(90);
students[2].setName("王五");
students[2].setScore(85);
std::cout << "总成绩:" << Student::getTotalScore(students, 3) << std::endl;
return 0;
}
```
在这个示例中,我们定义了一个 `Student` 类,该类有两个非静态成员函数 `setName` 和 `setScore`,用于设置学生的姓名和某门课程的成绩。我们还定义了一个静态成员函数 `getTotalScore`,用于计算所有学生的总成绩。最后,我们还定义了一个静态数据成员 `fullScore`,表示满分。
在 `main` 函数中,我们创建了一个学生数组,然后使用非静态成员函数设置每个学生的姓名和成绩。最后,我们使用静态成员函数计算学生的总成绩并输出。
阅读全文