编程论坛
注册
登录
编程论坛
→
C语言论坛
C++俩个第三方库中有同名头文件(FFmpeg、SDL2)
追梦人zmrghy
发布于 2023-04-12 10:53, 183 次点击
C++俩个第三方库中有同名头文件(FFmpeg、SDL2)
以前,听过,迷迷糊糊没听明白,用到时就不会了。。。。
2 回复
#2
Bccn1993
2023-04-21 10:20
c++可以使用命名空间区分
#3
rjsp
2023-04-21 15:09
同名头文件 怎么啦?
若是 同名外部链接的变量或函数 的话,会引发link冲突,才可有此一问。
我思来想去,仅当 两个及两个以上的第三方库都写得烂
(即使一些有名的库,也会因为只关注自己的一亩三分地,而……
)必须设定 库搜索路径 才能编译,且出现头文件重名 的情况,才会因为
#include "fuck.h"
而导致编译器不知道去include哪个目录下的fuck.h
解决方法很多,但我一般喜欢从根源上改掉这个bug,即把第三方的源代码改正确,改成不依赖 头文件搜索路径。从此以后,可以明确的写成
#include "A库的绝对或相对路劲/fuck.h"
#include "B库的绝对或相对路劲/fuck.h"
1