#pragma int_seg手动安排C++全局变量的初始化顺序

对于同一个文件而言,如main.cc:

int  a,

int  b;

int c;

总是从 a -> b ->c 的确定顺序初始化的,

而如果不同文件,other.cc中的全局变量

int e;

int f;

int g;

两个文件之间的全局变量初始化顺序是不确定的,

现在有个#pragma int_seg 可以让你的局部变量在进入程序初始化操作前就先初始化一些变量的操作

#pragma init_seg(compiler)   --编译阶段就初始化

#pragma init_seg(lib)         --链接阶段初始化

#pragma init_seg(user)      --链接完成后的阶段

 

一般来说,我们用第三个就可以了,第一个是留给编译器的,第二阶段有可能会奔溃(该定于在lib内部)

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值