c/c++中的__attribute__((weak))使用
main.cpp
#include <stdio.h> #include "g_test.h" extern bool testFunc(); bool __attribute__((weak))testFunc() { warnf("this is weak api\n"); return false; } int main() { testFunc(); return 0; }
g_test.h
#ifndef __G_TEST_H_ #define __G_TEST_H_ bool testFunc(); #endif
g_test.cpp
#include "g_test.h" #include <stdio.h> bool testFunc() { printf("this is strong api\n"); return false; }
输出结果是调用到g_test.cpp中的testFunc函数中
如果g_test.cpp中没有实现,则调用的__attribute__((weak))的函数
青青园中葵,朝露待日晞。
阳春布德泽,万物生光辉。
常恐秋节至,焜黄华叶衰。
百川东到海,何时复西归?
少壮不努力,老大徒伤悲!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步