C++匿名对象生存期

class Some
{
int n;
public:
  Some(int s){n=s;}
  ~Some(){
    cout<< "destroy\n";
  }
  int ret(){return n;}
};
int main(int argc, char* argv[])
{
        cout<<Some(111).ret()<<"\n";
        cout<<"wait\n";
        cin.get();
        return 0;
}

运行

C++匿名对象生存期_第1张图片

匿名对象只存在构造该对象的那行代码,离开构造匿名对象那行代码后立即调用析构函数。

你可能感兴趣的:(C++匿名对象生存期)