Gcc 和 Clang
__attribute__ ((__visibility__("hidden")))
- 用于设置符号的可见性(visibility)属性
__visibility__("default")- 默认可见性,符号在链接过程中对外可见
__visibility__("hidden")- 隐藏可见性,符号在链接过程中对外不可见
- 在创建静态库或共享库时很有用,可以限制对某些符号的直接访问,提高封装性和安全性
__visibility__("internal")- 内部可见性,符号对当前编译单元内可见,但对其他编译单元不可见
- 对于在模块内部使用的函数或变量非常有用,可以避免符号冲突和不必要的全局可见性
__attribute__ ((internal_linkage))
- 用于设置符号的链接属性为内部链接(internal linkage)
- 链接属性指定了符号在链接时的连接方式和可见性
- 常见的链接属性包括外部链接(external linkage)和内部链接(internal linkage)
__attribute__ ((external_linkage))- 外部链接,符号可以在不同的编译单元之间共享和访问
__attribute__ ((internal_linkage))- 内部链接,符号只在当前编译单元内可见和访问。其他编译单元无法直接访问该符号
- 内部链接在限制符号的可见性方面很有用,它可以用于避免符号冲突并提高代码的封装性
声明:本文为原创文章,版权归Aet所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ Soui二05/18
- ♥ C++11_第二篇12/03
- ♥ Soui七06/02
- ♥ 文件md5值计算05/31
- ♥ gflags记述:记录101/12
- ♥ C++_多线程相关03/12