student那句执行的时候报错了 ,把student(n)换student("name")又可以?

#include <iostream>
#include <string>
using namespace std;
class student
{
string name;
public:
student(string n):name(n)
{
cout<<"registering student "<<n<<endl;
}
};

class subject
{
int score;
string name;
public:
subject(string n,int s):name(n),score(s)
{
cout<<"subject "<<n<<endl
<<"score "<<s<<endl;
}
};

int main()
{
string n;
cin>>n;
int s;

cin>>s;

student(n);
subject(n,s);

return 0;
}
main函数里
subject 那句执行是没有问题的
但是 student 那句执行的时候就报错了
但是我把student(n)换成student("name")之类的又是可以运行的

人到中年有点甜
浏览 118回答 1
1回答

哆啦的时光机

我也不会,有点太难了;#include <iostream>using namespace std;class beijing;class shanghai{public:shanghai(int a,int b,int c){benchi=a;baoma=b;aodi=c;total=benchi+baoma+aodi;}int get_total(){return total;}friend int count (beijing b,shanghai s);private:int aodi,benchi,baoma,total;};class beijing{public:beijing(int a,int b,int c){benchi=a;baoma=b;aodi=c;total=benchi+baoma+aodi;}int get_total(){return total;}friend int count(beijing b,shanghai s);private:int aodi,benchi,baoma,total;};int count(beijing b,shanghai s){return b.total+s.total;}int main(){int a,b,c,d,e,f;cout<<"上海的车奔驰(a)宝马(b)奥迪(c)"<<endl;cin>>a>>b>>c;cout<<"北京的车奔驰(d)宝马(e)奥迪(f)"<<endl;cin>>d>>e>>f;shanghai s(a,b,c);beijing b(d,e,f);cout<<"the total count of shanghai is: "<<s.get_total()<<endl;cout<<"the total count of beijing is: "<<b.get_total()<<endl;cout<<"the total count of shanghai and beijing is: "<<count(b,s)<<endl;}我这也错了
打开App,查看更多内容
随时随地看视频慕课网APP