全局变量与main的执行顺序

程序如下:

class A{

public:

  A::A()   { cout<<"A construtor \n"; }

  A::~A() {cout<<"A destructor \n";}

}

A a;

void main()

{

  cout<<"this is main\n";

}

 

执行的结果为:

  A construtor

  this is main

  A destructor

这是因为全局变量的初始化早于main函数的执行,而销毁也在main函数结束之后,也就是说它的生命周期是整个程序,而不是随着main的消亡而消失

 

 

posted @ 2013-07-11 15:53  梧桐树下的一缕阳光  阅读(1051)  评论(0编辑  收藏  举报