第三方库中的宏冲突
macro collisions in third party libraries
我正在使用yojimbo(一个网络库(和spdlog——一个用于我正在开发的游戏的日志库。当我试图编译一个包含yojimbo和spdlog头的源文件时,我会遇到宏冲突,导致g++给出的许多错误。
具有任一标头但不是同时具有两者的源文件编译正常。
有没有办法避免这些第三方库中的宏冲突?
在这些第三方库中有没有避免宏冲突的方法?
是。最简单的解决方案是不将定义冲突宏的两个标头包含在同一翻译单元中。如果这还不够,那么一个潜在的解决方案是在包含第一个宏之后取消对冲突宏的定义。如果你需要两个宏,那么你可以在undefinition之后用另一个名字重写它。
相关文章:
- 将数组作为参数传递给函数安全吗?作为第三方职能部门,可以探索他们想要的之外的其他元素
- 写入位置0x0000000C时发生访问冲突
- GL_SHADERSTORAGE_BUFFER位置是否与其他着色器位置冲突
- 使用cmake从源代码构建MySQL连接器/C++失败(与以前的声明冲突)
- 引发异常:读取访问冲突**dynamicArray**为0x1118235.发生
- C++LinkedList问题.数据类型之间存在冲突?没有匹配的构造函数
- 链表中写入访问冲突的未知原因
- 如何包装第三方DLL在R中使用
- C++中的openCV Mat访问冲突
- 如何使 std::sort 在 std::swap 和我的命名空间的模板化交换之间没有名称冲突?
- 将 OpenCV 与 CMAKE 中的项目一起构建为第三方库的正确方法
- C++尝试深度复制唯一指针时出现内存访问冲突
- 错误:使用通用引用的声明冲突
- 第三方 API 中的编译错误 - Visual Studio
- 如何解决GTest和LibTorch联动冲突
- 两个运营商的一些奇怪的冲突<<
- C++第三方库 typedef 与标准 stdin.h 冲突
- 如何解决两个不使用命名空间的第三方库之间的类名冲突?
- 用第三方框架编译时Tensorflow Protobuf冲突
- 字节对齐与C++中的第三方库冲突