#include <iostream>
using namespace std;
class A
{
public:
A()
{
count = 0;
cout<< "A()"<<endl;
}
// A(A& a)
// {
// cout<< "A(A& a)"<<endl;
// }
~A()
{
count--;
cout<< "~A() "<<count<<endl;
}
void operator =( A a)
{
cout<< " = "<<endl;
}
int count;
};
A fun()
{
return A();
}
void main()
{
A a1;
a1 = fun();
int k =1;
using namespace std;
class A
{
public:
A()
{
count = 0;
cout<< "A()"<<endl;
}
// A(A& a)
// {
// cout<< "A(A& a)"<<endl;
// }
~A()
{
count--;
cout<< "~A() "<<count<<endl;
}
void operator =( A a)
{
cout<< " = "<<endl;
}
int count;
};
A fun()
{
return A();
}
void main()
{
A a1;
a1 = fun();
int k =1;
}
输出:
A()
A()
~A() -1
~A() -1
去掉注释:
A()
A()
~A() -1