gpt4 book ai didi

c++ - 如何制作类变量数组

转载 作者:行者123 更新时间:2023-11-28 00:44:57 25 4
gpt4 key购买 nike

如何创建成绩类变量数组。我不明白如何初始化以及在 main() 中写什么。由此,有没有办法使常数?我是否需要一个 for 循环来读取和输出数组?谢谢

class First
{
public:
int getId();
void setId(int);
int getExam();
void setExam(int);
void print();
First(int studentId, int exam);

private:
int id;
int grade;
};

int main()
{
int studentId = 0;
int exam = 0;

First Student(studentId, exam);

cout << "Enter student id" << endl;
cin >> studentId;
Student.setId(studentId);

cout << "enter grade" << endl;
cin >> exam;
Student.setExam(exam);

Student.print();

return 0;

}

最佳答案

如果您在编译时知道数组的大小,那么您将如何创建数组:

First student_list[size];

尽管使用像 std::array<T, N> 这样的编译时类更理想。 :

#include <array>

std::array<int, size> student_list;

如果您不知道编译时的大小,或者您的编译器不支持 std::array , 使用 std::vector<T> :

#include <vector>

std::vector<int> student_list;

此外,您的参数化构造函数 ( First(int, int) ) 覆盖了编译器通常提供的默认构造函数和复制构造函数。您的默认构造函数可能如下所示:

First() { }

否则你可以使用 default C++11 说明符:

First() = default;

但是,通过为您的专用构造函数使用默认参数,它可以在给定 0 个参数时充当默认构造函数。以下是一个不错的选择:

First(int studentid = 0, int exam = 0)
{ }

最后,是的,您需要某种循环来连续打印出每个元素的成绩。

关于c++ - 如何制作类变量数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16703089/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com