- __attribute__((constructor)) // 在main函数被调用之前调用
- __attribute__((destructor)) // 在main函数被调用之后调
static void func() __attribute__ ((constructor));
void func()
{
do();
}
void func()
{
do();
}
在项目中需要升级运营环境 gcc升到了高版本
之后发现func()没有在main函数之前调用。也就是没有执行
之后发现func()没有在main函数之前调用。也就是没有执行
低版本的gcc
3.4.6 执行时成功的
为了解决问题 需要废弃这种写法哦
struct InitGlobal
{
InitGlobal()
{
do();
}
~InitGlobal()
{
do2();
}
};
InitGlobal
init;