e.g:
#define HELPER_API __attribute__((visibility("default")))
__attribute__((visibility("visibility_type")))
此函数属性影响 ELF 符号的可见性。
Note
此属性是 ARM 编译器支持的 GNU 编译器扩展。
__attribute__((visibility("visibility_type")))
其中, 是下列值之一:visibility_type
-
假定的符号可见性可通过其他选项进行更改。缺省可见性将覆盖此类更改。缺省可见性与外部链接对应。
-
该符号不存放在动态符号表中,因此,其他可执行文件或共享库都无法直接引用它。使用函数指针可进行间接引用。
-
除非由 特定于处理器的应用二进制接口 (psABI) 指定,否则,内部可见性意味着不允许从另一模块调用该函数。
-
该符号存放在动态符号表中,但定义模块内的引用将与局部符号绑定。也就是说,另一模块无法覆盖该符号。
defaulthiddeninternalprotected
本文介绍如何使用__attribute__((visibility(“visibility_type”)))控制符号的可见性,包括default、hidden、internal及protected四种类型,并解释了它们的具体作用。

被折叠的 条评论
为什么被折叠?



