全局变量与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的消亡而消失