#include <iostream>
using namespace std;
class Cat
{
public:
Cat()
{
cout << "Cat construct" << endl;
}
Cat(Cat& obj)
{
cout << "Cat copy construct" << endl;
}
~Cat()
{
cout << "Cat destruct" << endl;
}
};
void playStage()
{
Cat(); /*在执行此代码时,利用无参构造函数生成了一个匿名Cat类对象;执行完此行代码,
因为外部没有接此匿名对象的变量,此匿名又被析构了*/
Cat cc = Cat(); /*在执行此代码时,利用无参构造函数生成了一个匿名Cat类对象;然后将此匿名变
成了cc这个实例对象,此匿名对象没有被析构。*/
cout << "cc not be destruct" << endl;
}
int main()
{
playStage();
return 0;
}