C++ 问题 答对有加分

来源:百度知道 编辑:UC知道 时间:2024/06/24 19:17:46
#include<iostream>
using namespace std;
class student
{
private:
int num;
char *name;
int age;
public:
student(int nu=354,char *na="mary",int ag=21);
student(student &s);
void display();
~student() {}
};
student::student(int nu,char *na,int ag)
{
num=nu;
strcpy(name,na);
age=ag;
}
student::student(student &s)
{
num=s.num;
strcpy(name,s.name);
age=s.age;
}
void student::display()
{
cout<<"name:"<<name<<"num:"<<num<<"age:"<<age<<endl;
}
int main()
{
student s(111,"lily",18);
s.display();
return 0;
}
这个程序哪里错了?

#include<iostream>
#include <string>
using namespace std;
class student
{
private:
int num;
string name;//改为string类型
int age;
public:
student(int nu=354,string na="mary",int ag=21);
student(student &s);
void display();
~student() {}

};
student::student(int nu,string na,int ag)
{
num=nu;
name=na;
age=ag;
}

student::student(student &s)
{
num=s.num;
name=s.name;
age=s.age;
}
void student::display()
{
cout<<"name: "<<name<<endl<<" num : "<<num<<endl<<" age : "<<age<<endl;
}
int main()
{
student s(111,"lily",18);
s.display();
return 0;
}

#include <cstring>
#include<iostream>
using namespace std;
class student
{
pr