#include <iostream>
#include <string>
using namespace std;
class CTestPlus{
public:
CTestPlus(){
m =0;
p=new int(100);
}
~CTestPlus(){delete p;}
CTestPlus(const CTestPlus& a) //拷贝构造函数
{
m = a.m;
p = new int;
*p = *(a.p);
}
CTestPlus& operator=(const CTestPlus& a) //赋值函数
{
m = a.m;
p = new int;
*p = *(a.p);
return *this;
}
void output(CTestPlus &a)
{
cout<<"a.m ="<<a.m<<endl;
cout<<"a.p ="<<*(a.p)<<endl;
}
private:
int m;
int *p;
#include <string>
using namespace std;
class CTestPlus{
public:
CTestPlus(){
m =0;
p=new int(100);
}
~CTestPlus(){delete p;}
CTestPlus(const CTestPlus& a) //拷贝构造函数
{
m = a.m;
p = new int;
*p = *(a.p);
}
CTestPlus& operator=(const CTestPlus& a) //赋值函数
{
m = a.m;
p = new int;
*p = *(a.p);
return *this;
}
void output(CTestPlus &a)
{
cout<<"a.m ="<<a.m<<endl;
cout<<"a.p ="<<*(a.p)<<endl;
}
private:
int m;
int *p;
};
#include "CTestPlus.h"
int main()
{
CTestPlus ctest;
CTestPlus A = ctest;
ctest.output(A);
//cout<<"A.m ="<<A.m;
CTestPlus c;
c =A;
ctest.output(c);
int wait;
cin>>wait;
}