构造函数不对,是两个参数(int,int)。
所有你得:
p=new Student(1,1)[5];
否则自己加一个构造函数
Student::Student();
然后再加一个输入的函数input(...);
才能p=new Student()[5];
*(p+1).input(...);
Student* = new Student[5];
要那样开辟内存,你必须要有默认参数的构造函数,就是说
class Student
{
public:
Student(); // 默认参数的构建(比如,默认name,0分)
Student(int,int);
void display();
private:
int number;
int score;
};
Student()
{}
自己再加一个空构造函数,当你自己定义构造函数时,系统不再生成默认空构造函数!