#include <string.h>
#include <iostream>
using namespace std;
class T
{
public:
T(char *s)
{
strcpy(str, s);
cout<<str<<"调用构造"<<endl;
}
~T()
{
cout<<str<<"调用析构"<<endl;
}
private:
char str[800];
};
T gob1("全局对象1 gob1"); //全局对象1
static T gsob("全局静态对象 gsob"); //全局静态对象
void fun()
{
T fob("局部对象 fob of fun");//局部对象
static T fsob("外部局部静态对象static fsob of fun");//外部局部静态对象
cout<<"fun()"<<endl;
}
int main()
{
T mob1("主函数局部对象1 mob1 of main");//主函数局部对象1
static T msob("主函数局部静态对象 static msob of main");//主函数局部静态对象
cout<<"调用fun之前,在main()函数中"<<endl;
fun();
cout<<"调用fun之后,在main()函数中"<<endl;
return 0;
}
关于全局全局静态局部局部静态的构造与析构顺序
最新推荐文章于 2022-02-04 04:28:42 发布