文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>静态对像的生存周期

静态对像的生存周期

时间:2010-09-05  来源:jianyuehan

当程序第一次执行所定义的静态对象时,该对象被创建,当程序结束时,该对象被释放。 下面的例子输出说明了静态对象生存周期

#include <iostream>
#include <string.h>
using namespace std;

class A {
    public:
    A(int sma) { cout<<"A construct..."<<" "<<sma<<endl; }
    ~A(){cout<<"destruct..."<<endl;}
};

void function(int n)
{
    static A sm(n);//sm 静态对象
    //A sm(n);//测试sm不为静态对象
    cout<<"function"<<" "<<n<<endl;
}

int main()
{
    function(10);
    function(20);
    return 0;
}


 
1.sm 为静态对象时输出
 A  construct...10 //sm对象构造时,由构造函数输出
 function 10 
 function 20 //对象sm为静态对象,再次调用function时sm已经存在,不再初始化
 destruct...

2.sm 不为为静态对象时输出
 A  construct...10 //sm对象构造时,由构造函数输出
 function 10
 destruct...
 A  construct...20 //新的sm对象构造时,由构造函数输出
 function 20
 destruct...

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载