【问题标题】:ERROR: Cannot open source file " "错误:无法打开源文件“”
【发布时间】:2012-03-17 21:29:51
【问题描述】:

我正在运行 Visual Studio C++,并且我有一个头文件“GameEngine.h”,我正试图让另一个文件看到。

当我#include "GameEngine.h" 时,它给了我无法打开源文件的错误。我不知道该怎么做。我已经做了一千次了,但由于某种原因,这现在不起作用。

【问题讨论】:

    标签: visual-studio visual-c++


    【解决方案1】:

    您需要检查您的项目设置,在 C++ 下,检查 include 目录 并确保它指向 GameEngine.h 所在的位置,另一个问题可能是 @ 987654322@ 不在您的源文件文件夹或任何包含目录中,并且位于相对于您的项目文件夹的不同文件夹中。例如,您有 2 个项目 ProjectAProjectB,如果您在 ProjectA 的某个源/头文件中包含 GameEngine.h,那么要正确包含它,假设 ProjectB 在同一个父文件夹中,请执行此操作:

    include "../ProjectB/GameEngine.h"
    

    如果你有这样的结构:

    根\ProjectA

    Root\ProjectB

    【讨论】:

      【解决方案2】:

      以防万一有人像我一样有点新,请仔细检查您的标题文件夹拼写是否正确。

      例如:

      <#include "Component/BoxComponent.h"
      

      这将导致错误。相反,它需要是:

      <#include "Components/BoxComponent.h"
      

      【讨论】:

        【解决方案3】:

        让我感到惊讶和惊讶的是,在继承的项目中,它所引用的文件在项目文件夹之外的相对路径上被引用,但仍存在于项目文件夹中。

        在解决方案资源管理器中,单击每个出现错误的文件,打开属性窗口(右键单击,属性),并确保“相对路径”只是文件名(例如MyMissingFile.cpp),如果它在项目文件夹。就我而言,它设置为:..\..\Some Other Folder\MyMissingFile.cpp

        【讨论】:

          【解决方案4】:

          这是谷歌搜索“无法打开源文件”时的最佳结果,所以我想我会分享我的问题,因为我已经包含了正确的路径。

          我不确定其他 IDE 或编译器,但至少对于 Visual Studio,请确保包含目录列表中没有空格。我在最后一个条目的 ; 和我的新条目的开头之间放置了一个空格,这导致 Visual Studio 忽略了我的包含。

          【讨论】:

            【解决方案5】:

            对于编写 CUDA 程序的人,您还需要在项目属性下的 CUDA C/C++ 选项卡下配置 Additional Include Directories

            【讨论】:

              【解决方案6】:

              让虚幻引擎完成这项工作。 全部关闭,右键单击您的项目文件 (.uproject),
              生成 VisualStudio 项目文件”。

              【讨论】:

              • 听起来很神奇。不适用于#include "DestructibleMesh.h"
              • 这个问题甚至没有提到虚幻,请留在主题中寻找答案
              【解决方案7】:
              1. 复制文件内容,
              2. 创建一个 .h 文件,将其命名为原始 .h 文件的名称
              3. 将原文件的内容复制到新建的文件中
              4. 构建它
              5. 瞧!!

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2013-11-08
                • 1970-01-01
                • 2022-01-01
                相关资源
                最近更新 更多