谨慎小天鹅

文章
5
资源
0
加入时间
2年10月17天

__weak 和 __attribute__((weak)) 关键字的使用来源强/弱符号__weak__attribute__((weak))区别参考

用__weak定义的函数弱输出其符号。弱定义的函数的行为类似于正常定义的函数,除非将同名的非弱定义的函数链接到同一镜像中。如果在同一镜像中同时存在非弱定义函数和弱定义函数,则对该函数的所有调用都会解析为调用非弱函数,否则直接使用弱定义的函数(与上面的若声明不同)。如果可以使用多个弱定义,则除非使用链接器选项,否则链接器会生成一条错误消息。在这种情况下,链接器随机选择一个供所有调用来使用。/* a.h!!!注意所在文件不同!!!*//* a.c!!!注意所在文件不同!!!*/{FuncB();