-
__attribute__((constructor))
// 在main函數被調用之前調用
-
__attribute__((destructor))
// 在main函數被調用之後調
static void func() __attribute__ ((constructor));
void func()
{
do();
}
在項目中需要升級運營環境 gcc升到了高版本
之後發現func()沒有在main函數之前調用。也就是沒有執行
低版本的gcc
3.4.6 執行時成功的
爲了解決問題 需要廢棄這種寫法哦
struct InitGlobal
{
InitGlobal()
{
do();
}
~InitGlobal()
{
do2();
}
};
InitGlobal
init;