attribute 扩展

今天参考json-c的源码

读到一个关于attribute 扩展

static void json_object_init(void) __attribute__ ((constructor));
static void json_object_fini(void) __attribute__ ((destructor));

google到含义如下

void main_enter() __attribute__((constructor));//main_enter函数在进入main函数前调用

void main_exit() __attribute__((destructor));//main_exit函数在main函数返回后调用

 

在main之后调用,可以用

at_exit(); 注册函数,但函数声明类型固定了。

在main之前调用,可以利用全局变量来做。

这个扩展好,今后好好用到。

posted @ 2012-06-07 16:26  westfly  阅读(179)  评论(0编辑  收藏  举报