C++来高人帮忙改造Person类

来源:百度知道 编辑:UC知道 时间:2024/06/30 21:39:02
#include <iostreamclass Person
{ public :
Person(const char *, int, char); Person();
void Register(const char *, int, char);
void GetName(char *);
int GetAge();
char GetSex();
~Person();
private :
char *Name;
unsigned Age;
char Sex;
};

对Person类进行改进,实现下述功能:
1.默认构造函数(系统自动决定某个对象在生成后的默认姓名、年龄及性别)
2.带参数的构造函数(即注册信息由参数来决定)
3.能更名
4.在结束程序前释放动态申请的空间

#include <iostream>
using namespace std;

class Person
{
public :
Person(const char *, int, char);
Person();
void Register(const char *, int, char);
char* GetName();
char* SetName(char *);
int GetAge();
char GetSex();
~Person();
private :
char *Name;
unsigned Age;
char Sex;
};

Person::Person()
{
Name = strdup("default");
Age = 1;
Sex = 0;
}

Person::Person(const char * name, int age, char sex)
{
if(Name)
{
free(Name);
Name = strdup(name);
}

Age = age;
Sex = sex;
}

void Person::Register(const char * name, int age, char sex)
{
if(Name)
{
free(Name);
Name = strdup(name);
}

Age = age;
Sex = sex;
}

char* Person::GetName()
{
return Name;
}

char