0

我有一个使用谷歌日志库(glog)的库 A.dll。现在我想在另一个项目中使用这个库,在我自己的项目中我不想使用 glog。我只想使用A.dll,但是在编译过程中,编译器说找不到logging.h头!!!

为什么会这样?!它是 A.dll 内部使用的标头,我想使用 A 的接口而不是 glog。我认为包含 Ah 就足够了,我不需要 logging.h 。我错了吗?知道有什么问题吗?

A.dll 使用 MSVC++ 2015 构建,我在 QT Creator 中使用 MSVC++ 2015。

4

1 回答 1

1

您还没有包含 glog 头文件如何以及在何处包含在 A 库中的证据。
但是我们可能会假设它是#included 在公共库头文件之一中,您的项目包含以使用该库,因此您错误地获得了 glog 头文件依赖项。

原因之一是 A 库的开发人员做得不好,未能隐藏内部唯一的依赖项。

如何克服间接包含依赖?
这取决于 A 库头文件的编写方式以及您或原始 A 库开发人员是否可以更改它以避免暴露内部依赖关系。

于 2017-02-01T11:41:33.030 回答