补充c++程序 请大神指点

#include<iostream>

#include<fstream>

#include<cstring>

using namespace std;

class Record

{

char name[50];

unsigned Id;

char sex;

float score;

public:

~Record(){}

};

int main ()

{

Record m1("Yang Lee",20184445,´M´,90);

Record m2(m1);

cout<<m1<<endl;

m2.setname("Chong Law");

cout<<m2<<endl;

return 0;

}

#include<iostream>

#include<fstream>

#include<cstring>

using namespace std;

class Record

{
	char name[50];

	unsigned Id;

	char sex;

	float score;

public:
	// 重写构造函数
	Record(const char * n, unsigned i, char s, float sc){
		memcpy(name, n, sizeof(name));
		Id = i;
		sex = s;
		score = sc;
	}
	// 设置参数
	void setname(const char * n){
		memcpy(name, n, sizeof(name));
	}
	// 友元函数 流的重载
	friend ostream & operator<<(ostream & os, Record & c)
	{
		os << c.name <<" " << c.Id <<" "<<c. sex <<" "<< c.score;
		return os;
	}
	~Record(){}

};

int main()

{
	Record m1("Yang Lee", 20184445, 'M', 90);

	Record m2(m1);

	cout << m1 << endl;

	m2.setname("Chong Law");

	cout << m2 << endl;

	return 0;

}

 

#include<iostream>
#include<fstream>
#include<cstring>
using namespace std;

class Record
{
	char name[50];
	unsigned Id;
	char sex;
	float score;

public:
	~Record(){}
    //构造函数
	Record(string str, unsigned _Id, char _sex, float _score)
	{
		memset(name,0,50);
		_snprintf(name, 49, "%s", str.c_str());
		Id = _Id;
		sex = _sex;
        score = _score;
	};
    //构造函数
	Record(Record &_Record)
	{
		memset(this,0,sizeof(Record));
		memcpy(this, &_Record, sizeof(Record));
	};
    inline void setname(string str)
	{
		memset(name,0,50);
		_snprintf(name, 49, "%s", str.c_str());
	}
    //重载操作符<<
	friend ostream & operator<<(ostream & os,const Record &_Record);
};

ostream & operator<<(ostream & os,const Record &_Record)
{
	os<<_Record.name<<endl;
	os<<_Record.Id<<endl;
	os<<_Record.sex<<endl;
	os<<_Record.score<<endl;
	return os;
}

int main ()

{

	Record m1("Yang Lee",20184445,'M',90);

	Record m2(m1);

	cout<<m1<<endl;

	m2.setname("Chong Law");

	cout<<m2<<endl;

	return 0;

}

 

你是要干什么?