#include<iostream>
using namespace std;
class person
{
public:
person(int a)
{
age = new int(a);
}
person& operator=( person& p)
{
if (age != NULL)
{
delete age;
age = NULL;
}
age = new int(* p.age);
return *this;
}
~person()
{
if (age != NULL)
{
delete age;
age = NULL;
}
}
int *age;
};
void test01()
{
person p1(10);
person p2(20);
person p3 (30);
p3 = p2 = p1;
cout << "p1.age=" <<* p1.age << endl;
cout << "p2.age=" <<* p2.age << endl;
cout << "p3.age=" << *p3.age << endl;
}
int main()
{
test01();
}