C++,建立一个对象数组,内放5个学生的数据(学号成绩)我的程序错在哪里?

2025-02-24 10:09:17
推荐回答(3个)
回答1:

构造函数不对,是两个参数(int,int)。
所有你得:
p=new Student(1,1)[5];
否则自己加一个构造函数
Student::Student();
然后再加一个输入的函数input(...);
才能p=new Student()[5];
*(p+1).input(...);

回答2:

Student* = new Student[5];

要那样开辟内存,你必须要有默认参数的构造函数,就是说

class Student
{
public:
Student(); // 默认参数的构建(比如,默认name,0分)
Student(int,int);
void display();
private:
 int number;
 int score;
};

回答3:

Student()
{}
自己再加一个空构造函数,当你自己定义构造函数时,系统不再生成默认空构造函数!