c++新手问题.求救...

来源:百度知道 编辑:UC知道 时间:2024/06/04 14:57:12
#include<iostream>
using namespace std;
class sth{
public:
shuju(int,int);
display();
private:
int num;
int score;
};
sth::shuju(int n,int s):num(n),scoal(s){}
sth::display(){
cout<<num<<' '<<score<<endl;
}
int main()
{sth student[3]={shuju(1,10),shuju(2,20),shuju(3,30)};
sth *p;
p=student;

cout<<p->display()<<endl;
}请问高手们,哪里出错啊..请指出...并替我改一下.谢谢你们..

#include<iostream>
using namespace std;
class sth{
public:
sth(int,int); //构造函数的名字和类名是一样的
void display(); //加上返回类型。
private:
int num;
int score;
};
sth::sth(int n,int s):num(n),score(s){}
void sth::display(){
cout<<num<<' '<<score<<endl;
}
int main()
{
sth student[3]={sth(1,1),sth(2,20),sth(3,30)}; //这里应该是sth,即类名(或构造函数名)
sth *p;
p=student;

p->display(); //原代码中的输出语句错误
}

display()要声明返回类型才能作为参数,比如int,char*等。

#include<iostream>
using namespace std;

class sth
{
public:
sth(int,int); //构造函数要和类同名
void display(); //函数要有返回值
private:
int num;
int score;
};

sth::sth(int n,int s):num(n),score(s){} //score你写错
void sth::display()
{
cout<<num<<' '<<score<<endl;
}
int main(