程序出现问题,怎么在不改变主函数内容的前提下,改正该程序?



#include 
using namespace std;
class CPerson
{
public:
    void Print();
private:
    CPerson();
private:
    int age;
    char *name;
};

CPerson::CPerson()
{
}
void CPerson::Print()
{
    cout<<"name="<",age="<int  main()
{
    CPerson ps1(23,"张三");
    CPerson ps2=ps1; 
    ps1.Print();
    ps2.Print();
    return 0;
}

加个有参构造函数

 
#include <iostream>
using namespace std;
class CPerson
{
public:
    void Print();
    CPerson();
    CPerson(int a,char *n);
private:
    int age;
    char *name;
};
 
CPerson::CPerson()
{
}
CPerson::CPerson(int a,char *n)
{
    age = a;
    name = new char[strlen(n)];
    strcpy(name,n);
}
void CPerson::Print()
{
    cout<<"name="<<name<<",age="<<age<<endl;
}
int  main()
{
    CPerson ps1(23,"张三");
    CPerson ps2=ps1; 
    ps1.Print();
    ps2.Print();
    return 0;
}

void Print();
下面加上

CPerson(int _age, char * _name)
{
age = _age;
name = new char[strlen(_name)  + 1];
strcpy(name, _name);
}