33,311
社区成员
发帖
与我相关
我的任务
分享
//这么写
#include <string.h>
#include <iostream.h>
class Person
{
private :
char *name;
public :
Person()
{
name=new char[256];
}
Person(Person &p)
{
name=new char[256];
strcpy(name,p.name);
}
~Person()
{
if (name!=NULL)
delete[] name;
}
void SetName(const char* name1)
{
if(strlen(name1)+1 <256) strcpy(name,name1);
}
void PrintName()
{
cout <<name <<endl;
}
};
int main()
{
Person p1;
p1.SetName("John");
p1.PrintName();
Person p2(p1);
p2.SetName("Alice");
p2.PrintName();
p1.PrintName();
}
Person(Person &p){
if(this != &p){
name = new [strlen(p) + 1];
strcpy(name, p.name);
}
}
//改改
Person(Person &p){
if(this != &p){
name = new char[strlen(p.name) + 1];
strcpy(name, p.name);
}
}
Person(Person &p){
name=new char[256];
strcpy(name, p.name);
}