您的位置:首页 > 编程语言 > C语言/C++

GNU C 的一大特色__attribute__ 机制

2017-05-26 18:40 281 查看
aligned (alignment)

attribute((aligned(8)))该属性设定一个指定大小的对齐格式

函数属性(Function Attribute)

attribute((format(printf,1,2)))

attribute((noreturn))该属性通知编译器函数从不返回值

attribute((const)) 编译器只调用了函数一次,以后只是直接得到了相同的一个返回值。

attribute((constructor(n))) 在main() 之前执行,attribute((destructor(n))) 在main()执行结束之后执行. n>100 100以内是内部保留

attrubte ((packed)) 的作用就是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节数进行对齐。

attribute((sentinel))的作用是提醒程序员:“此可变参数函数需要一个NULL作为最后一个参数。”,而这个NULL参数一般被叫做“哨兵参数”

static Sequence* create(FiniteTimeAction *action1, …) CC_REQUIRES_NULL_TERMINATION;

CC_DISALLOW_COPY_AND_ASSIGN 拷贝构造函数私有化 拒绝外部使用

设计一个专门为了阻止copying动作(包含copy和assign)而设计的基类
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  函数 c语言 编译器