找不到包含文件

时间:2013-08-29 10:45:15

标签: c++ visual-studio include

我有一个包含2个项目的解决方案:

  • ControlGUI
  • FunctionLIB

在FunctionLIB中,我使用两个API作为外部硬件,称为SDK1.h和SDK2.h

lib由GUI链接,但GUI仅包含FunctionLIB.h

构建lib时,会找到标题,因为include目录设置正确。但是在编译使用LIB函数的GUI时,我得到了未找到的包含文件。我还必须将include目录添加到GUI目录中。

为什么会这样? LIB发现它很好,但是GUI间接抛出错误,我不明白为什么它首先需要那些包含。

1 个答案:

答案 0 :(得分:2)

如果您创建了一个库,则应该有一个(或多个) public 头文件,这些文件包含在需要您的库的代码中。但是,这些公共头文件应尽量不包含您库内部使用的任何外部库。

在您的情况下,为您的库创建两个头文件可能就足够了。一个公共,一个私有,包括公共头文件和外部头文件。然后在您的库中,您只包含私有头文件。

相关问题