gpt4 book ai didi

c-preprocessor - 什么是_LIBCPP_INLINE_VISIBILITY?

转载 作者:行者123 更新时间:2023-12-04 10:54:02 28 4
gpt4 key购买 nike

LLVM libc++ 头文件有一个宏,用于函数声明,名为 _LIBCPP_INLINE_VISIBILITY .

我不明白这是什么意思;我查看了它的定义,它说:

// Just so we can migrate to the new macros gradually.
#define _LIBCPP_INLINE_VISIBILITY _LIBCPP_HIDE_FROM_ABI

...而这第二个宏没有我能找到的定义。那么, _LIBCPP_INLINE_VISIBILITY 是什么意思?是什么意思,它通常扩展成什么?

最佳答案

(谢谢,@Ruslan)
目的是隐藏标有它的函数出现在动态库中(“从 ABI 中隐藏”)。这曾经是通过制作这样的函数来完成的 inline只是,但现在,clang 属性 attribute((internal_linkage))用来;这就是_LIBCPP_HIDE_FROM_ABI的定义.
至于 inline-for-invisibility 宏 _LIBCPP_INLINE_VISIBILITY - 你看到的是它被重新定义为它的名字应该是什么。

关于c-preprocessor - 什么是_LIBCPP_INLINE_VISIBILITY?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59322656/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com