【问题标题】:c++ - How to add header and cpp files in a library projectc++ - 如何在库项目中添加头文件和 cpp 文件
【发布时间】:2018-05-09 22:16:34
【问题描述】:

长话短说:我有一些我认为在库中有用的函数,而不是仅仅将函数从一个项目复制到下一个项目。所以我创建了一个库项目并将我的头文件和cpp文件放入项目中,在我的第二个项目中引用它(在同一个解决方案中),一切正常。

这是我的问题。我想在不同的文件中添加另一组函数。于是我新建了一个头文件和一个新的cpp文件,但是现在我好像不能include这个新的头文件。另一个工作正常,但不能包含新的,VS 给了我这些错误代码:

E1696   cannot open source file "2ndFunctionSet.h"                  [2ndProjectName]        [FileNameA]
C1083   include : '2ndFunctionSet.h' : No such file or directory    [2ndProjectName]        [FileNameA]

以下是解决方案当前结构的摘要:

SolutionName
|---project > CommonLibraries
|   |---{header files}
|   |   |---baseFunctions.h
|   |   |---2ndFunctionSet.h
|   |---{source files}
|       |---baseFunctions.cpp
|       |---2ndFunctionSet.cpp
|
|---project > 2ndProjectName
    |---{header files}
    |   |---someClass.h
    |   |---mainCode.h
    |---{source files}
        |---someClass.cpp
        |---mainCode.cpp

common libray 中的两个 cpp 文件都包含它们的头文件和 stdafx.h 默认预编译文件,并且两者的构造似乎相似。

你能帮我理解我做错了什么吗?我有一段时间没有做c++了,所以很可能在创建库项目或创建新的函数集文件时出现了程序错误。

【问题讨论】:

  • 将库头文件夹添加到其他项目的附加包含目录中。
  • 您确定2ndFunctionSet.hbaseFunctions.h 在同一个文件夹中吗?你可以用文件资源管理器检查吗?有时 Visual Studio 会以错误的路径显示文件。
  • 我不理解反对票,但无论如何...感谢@thomas-sablik 指出。原来第一个文件仍在第二个项目文件夹中。所以它也不应该工作。

标签: c++ visual-studio include header-files


【解决方案1】:

文件不在同一个文件夹中。

您还应该检查“工作”的文件是否在正确的文件夹中:

  • 打开文件浏览器
  • 检查库项目的文件夹
  • 如果文件位于错误的文件夹中
    • 将它们移动到正确的项目文件夹中
    • 添加对新文件位置的引用

现在介绍“如何将这些文件包含在同一解决方案的项目中”:

  • 进入“2ndProjectName”项目的属性
  • "Configuration Properties" > "c/c++" > "General"
  • 在“其他包含目录”中:单击 > 编辑并转到库项目文件夹。
  • 在解决方案资源管理器中,进入您的“2ndProjectName”项目
  • 右键单击“参考”>“添加参考”
  • 确保您的库项目已选中

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-25
    相关资源
    最近更新 更多