LINUX下GCC链接库函数导出声明

在linux下,源文件中的所有函数都有一个默认的visibility属性为public

在编译命令中加入-fvisibility=hidden参数,会将所有默认的public的属性变为hidden。

此时,如果对函数设置__attribute__ ((visibility("default")))参数,则该函数对外可见。

所以,设置了-fvisibility=hidden参数之后,只有设置了__attribute__ ((visibility("default")))的函数才是对外可见的,如此则效果等同于Visual Studio下的__declspec(dllexport)定义。

你可能感兴趣的:(linux,gcc)