#include <iostream>
#include <cstring>
using namespace std;
class Student
{
public:
int id;
char name[50]; // Data field
int age; // Data field
Student(int d){
id = d;
strcpy(name,"no name");
age = 0;
}
Student(int a, char* b, int c){
id = a;
strcpy(name,b);
age = c;
}
Student(){
id = 100;
strcpy(name,"2222");
age = 61;
}
void set(Student &,int a , char*c, int b){
id = a;
strcpy(name,c);
age = b;
}
void print(){
cout << name << ' '<<'(' << id <<')'<<' '<<"is" <<' '<<age <<' '<<"years old." <<endl;
}
};
void set(Student & , int a, char* c, int b){
Student student;
student.id = a;
strcpy(student.name,c);
student.age = b;
}
void print(Student student){
cout << student.name << ' '<<'(' << student.id <<')'<<' '<<"is" <<' '<<student.age <<' '<<"years old." <<endl;
}
int main()
{
Student std1, std2(123, "Larry Jordan", 18), std3(124);
set(std1, 100, "Steven Gates", 61);
print(std1);
print(std2);
print(std3);
return 0;
}
上述代码中set函数是改变已定义的类里的变量的值,然而现在调不成功?要用引用传参?---3.17
上述代码中set函数是实现在主函数里改变类里的变量的值,然而现在好像调试不成功,亟待改进!!