c++ - C1083 : Cannot open include file: . .. : No such file or directory?

标签 c++ visual-studio-2010

我有一个奇怪的错误 C1083(无法获取头文件)。我读过其他 C1083 帖子,但我认为我的帖子有所不同:

1) 头文件添加到我的项目属性中的附加包含属性下。

2) 另一个类使用相同的头文件(相同的项目),并编译。在我将我的头文件添加到第二个头文件之前,问题不会发生。

3) 我使用自动完成/intellesense 制作一个“..\include\myClass.h”文件。一个建议是我使用了错误的路径,但所有内容都在同一个目录中。反正我试过了。

所有文件都在同一目录中,并且该目录包含在附加包含属性中。

本质上,项目的一部分看到了它,而另一部分却看不到?我不知道我错过了什么。

最佳答案

如果目标“include”目录被添加到“additiona includes”项目属性,那么您实际上根本不需要该路径。

我的意思是,拥有:

\myFolder\project
                 \project.vcproj
                 \source
                      \myCode.cpp    <- compiling this one here?
                 \data
                      \myDb.foo
                 \include            <- this DIR#1
                         \foo1.h
                         \myClass.h  <- this FILE#1
                         \foo2.h
                         \lib1
                              \bar.h <- this FILE#2

如果您将 DIR#1 添加到“附加包含目录”,则:

#include "myClass.h"  // to include FILE#1
#include "lib1\bar.h"  // to include FILE#2

应该足够了。

如果您没有在此处添加路径,则以下应该有效:

#include "include\myClass.h"  // to include FILE#1
#include "include\lib1\bar.h"  // to include FILE#2

如果您添加了路径,但第一个不起作用,但第二个起作用,那么您添加的路径不正确 - 绝对确保文件/文件夹结构确实与您认为的相同。此外,如果您向项目添加了相对路径,请尝试将其更改为绝对路径。

关于c++ - C1083 : Cannot open include file: . .. : No such file or directory?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27511578/

相关文章:

c++ - 遍历字符串时 Stringstream 不起作用

c++ - 我在 Linux C 或 C++ 中搜索 Windows msg.exe 的等效项

c# - 在 C# (VS-2010) 中,如果使用了某个库类,是否有办法使前端构建失败? (通常什么时候编译就好了?)

visual-studio-2010 - 一种在控制台中查看预构建步骤输出的方法?

windows - lnk1104 : cannot open file 'libpng.lib' , 但 'libpng.lib' 是输出,不是输入

c# - 听写语法与自定义语法

c++ - 我可以使用 ICC 为多种 CPU 架构进行编译吗?

c++ - 将 float 与常量进行比较时的奇怪行为

c++ - 与/MT 的 c++ 链接在 heap_alloc 处崩溃

javascript - 代码完成无法识别来自 OpenLayers js 文件的成员