如何避免 Vscode 中将头文件放在与 src 不同的目录中时出现错误

2023-11-23

好吧,我在 VSCode 中遇到了错误问题。基本上我决定重新组织并将我的头文件移动到一个单独的文件夹“include”中。我的目录简单如下:

-build
-include
 |-SDL2
 |-SDL2_Image
 |-someHeaderFile1.h
 |-someHeaderFile2.h
-src
 |-main.cpp
 |-someCppFile.cpp
-Makefile

我的 Makefile 包含:

SRC_DIR = src
BUILD_DIR = build/debug
CC = g++
SRC_FILES = $(wildcard $(SRC_DIR)/*.cpp)
OBJ_NAME = play
INCLUDE_PATHS = -Iinclude -I /include
LIBRARY_PATHS = -Llib
COMPILER_FLAGS = -std=c++11 -Wall -O0 -g
LINKER_FLAGS = -lsdl2 -lsdl2_image

all:
    $(CC) $(COMPILER_FLAGS) $(LINKER_FLAGS) $(INCLUDE_PATHS) $(LIBRARY_PATHS) $(SRC_FILES) -o $(BUILD_DIR)/$(OBJ_NAME)

该程序编译并运行,但是,我的问题是 VSCode,因为它显示包含错误: #include "someHeaderFile1.h" vs #include "../include/someHeaderFile1.h"

任何援助将不胜感激。


您需要将该文件夹的路径放入Include path。一种方法如下所示。每个步骤都附有屏幕截图,以便它(过程)更加清晰。

Step 1

Press Ctrl + Shift + P

这将打开一个具有不同选项的提示。您必须选择以下选项:编辑配置

s1

Step 2

选择后编辑配置将打开一个包含不同选项的页面。你必须向下滚动并选择选项包含路径然后将路径粘贴到您的包含文件夹中。

s2

下面是添加后的图片include文件夹的路径进入Include Path option.

s3

Step 3

现在将包含文件夹的路径添加到Include path字段,您可以关闭此窗口,您提到的所有 vscode 错误将不再存在。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何避免 Vscode 中将头文件放在与 src 不同的目录中时出现错误 的相关文章

  • 为什么在连接两个字符串时 Python 比 C 更快?

    目前我想比较 Python 和 C 用来处理字符串的速度 我认为 C 应该比 Python 提供更好的性能 然而 我得到了完全相反的结果 这是 C 程序 include
  • 适合初学者的良好调试器教程[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有谁知道一个好的初学者教程 在 C 中使用调试器 我感觉自己好像错过了很多 我知道怎么做 单步执行代码并查看局部变量 虽然这常常给我带来问
  • 如何在C(Linux)中的while循环中准确地睡眠?

    在 C 代码 Linux 操作系统 中 我需要在 while 循环内准确地休眠 比如说 10000 微秒 1000 次 我尝试过usleep nanosleep select pselect和其他一些方法 但没有成功 一旦大约 50 次 它
  • 如何判断计算机是否已重新启动?

    我曾经使用过一个命令行 SMTP 邮件程序 作为试用版的限制 它允许您在每个 Windows 会话中最多接收 10 封电子邮件 如果您重新启动计算机 您可能还会收到 10 个以上 我认为这种共享软件破坏非常巧妙 我想在我的应用程序中复制它
  • 如何填充 ToolStripComboBox?

    我发现它很难将数据绑定到ToolStripComboBox 好像没有这个ValueMember and DisplayMember特性 怎么绑定呢 访问toolstripcombobox中包装的组合框并访问其ValueMember Disp
  • 查看 NuGet 包依赖关系层次结构

    有没有一种方法 文本或图形 来查看 NuGet 包之间的依赖关系层次结构 如果您使用的是新的 csproj 您可以在此处获取所有依赖项 在项目构建后 项目目录 obj project assets json
  • 如何让 vsCode 了解自动补全的深度依赖导入?

    我创建了多个角度库 让我可以使用一堆组件更快地创建网站 例如 sidenav 卡片 我创建了一个 超级库 来导入所有这些库 这样我就可以使用npm i myWebsiteBundle立即下载所有依赖项 我已将每个类似的插件列入白名单ng p
  • 使用可变参数包类型扩展的 C++ 函数调用者包装器

    我绑定了一些 API 并且绑定了一些函数签名 如下所示 static bool WrapperFunction JSContext cx unsigned argc JS Value vp 我尝试将对象和函数包装在 SpiderMonkey
  • unordered_map 中字符串的 C++ 哈希函数

    看起来 C 标准库中没有字符串的哈希函数 这是真的 在任何 c 编译器上使用字符串作为 unordered map 中的键的工作示例是什么 C STL提供模板专业化 http en cppreference com w cpp string
  • 对 std::vector 进行排序但忽略某个数字

    我有一个std vector
  • 识别 Visual Studio 中的重载运算符 (c++)

    有没有办法使用 Visual Studio 快速直观地识别 C 中的重载运算符 在我看来 C 中的一大问题是不知道您正在使用的运算符是否已重载 Visual Studio 或某些第三方工具中是否有某些功能可以自动突出显示重载运算符或对重载运
  • IQueryable 单元或集成测试

    我有一个 Web api 并且公开了一个端点 如下所示 api 假期 name name 这是 Web api 的控制器 get 方法 public IQueryable
  • 如何在 VSCode 中禁用 HTML 自动完成功能?

    当我打字时const someVariable someArray 0 当我按 Enter 时 VSCode 会自动将整行转换为 const someVariable
  • 保护 APK 中的字符串

    我正在使用 Xamarin 的 Mono for Android 开发一个 Android 应用程序 我目前正在努力使用 Google Play API 添加应用内购买功能 为此 我需要从我的应用程序内向 Google 发送公共许可证密钥
  • 高效列出目录中的所有子目录

    请参阅迄今为止所采取的建议的编辑 我正在尝试使用 WinAPI 和 C 列出给定目录中的所有目录 文件夹 现在我的算法又慢又低效 使用 FindFirstFileEx 打开我正在搜索的文件夹 然后我查看目录中的每个文件 使用 FindNex
  • Unity:通过拦截将两个接口注册为一个单例

    我有一个实现两个接口的类 我想对该类的方法应用拦截 我正在遵循中的建议Unity 将两个接口注册为一个单例 https stackoverflow com questions 1394650 unity register two inter
  • String.Empty 与 "" [重复]

    这个问题在这里已经有答案了 可能的重复 String Empty 和 有什么区别 https stackoverflow com questions 151472 what is the difference between string
  • 使用 omp_set_num_threads() 将线程数设置为 2,但 omp_get_num_threads() 返回 1

    我有以下使用 OpenMP 的 C C 代码 int nProcessors omp get max threads if argv 4 NULL printf argv 4 s n argv 4 nProcessors atoi argv
  • 如何减少具有多个单元的 PdfPTable 的内存消耗

    我正在使用 ITextSharp 创建一个 PDF 它由单个 PdfTable 组成 不幸的是 对于特定的数据集 由于创建了大量 PdfPCell 我遇到了内存不足异常 我已经分析了内存使用情况 我有近百万个单元格的 1 2 在这种情况下有
  • 不区分大小写的字符串比较 C++ [重复]

    这个问题在这里已经有答案了 我知道有一些方法可以进行忽略大小写的比较 其中涉及遍历字符串或一个good one https stackoverflow com questions 11635 case insensitive string

随机推荐

  • 如何计算矩阵中给定值的元素数量?

    有谁知道如何计算一个值在矩阵中出现的次数 例如 如果我有一个 1500 x 1 矩阵M 向量 存储工作日 1 7 的值 我如何计算存储了多少个星期日 1 星期一 2 星期六 7 M 看一下确定并计算数组的唯一值 或者 计算出现的次数5 简单
  • HttpContext.Current.Response 和 Page.Response 有什么区别?

    我正在解决一组安全页面上的缓存问题 并意识到需要修改所有响应的标头 当我整理解决方案时 我想知道 HttpContext Current Response 和 Page Response 之间的区别以及何时应在应用程序中使用每个对象 Tha
  • 如何防止在sqlite数据库中插入重复值(如果重复则覆盖)

    我在数据库中创建了两个表 在两个表中我同时插入值 现在我想做的是 我想在第二个表中插入记录 但条件是 如果有两个相同的记录记录然后我只想插入一条记录而不是重复值 在第二个表中有两个字段 一个是id第二个是category 当用户插入两个相同
  • 如何在Windows命令脚本中使用sql*plus来控制流程?

    我正在尝试使用 sql plus 来控制一个小的 Windows 命令脚本 基本上 我想执行一些 PL SQL 可能从视图或表中选择或执行函数 它显示数据库中某些行的状态 然后根据行的状态执行一些 Windows 命令 我的问题是如何将结果
  • 使用“class”关键字声明变量与在函数签名中声明不使用“class”关键字的变量

    这两种方法有什么区别 有时 当我遇到编译时错误时 抱怨编译器无法识别 函数签名中存在一些类类型 那么如果我在各个变量前面添加关键字 class 总是可以解决此类编译时错误 例如 如果编译器无法识别类型Client in void recv
  • 如何从突变中获取新对象的ID?

    我有一个createObject突变返回新对象的 ID 返回后 我想重定向到有关新对象的详细信息页面 如何使用反应 中继从包含组件中的突变获取响应字段 E g my createObject页面包含如下代码的突变 var onFailure
  • Fortran 派生类型实例的用户定义构造函数

    这是我与Fortran相关的第二个问题 我使用C 所以请原谅我的思维方式 我想在适当的时候使用 OOP 也就是说 在 Fortran 中使用派生类型 在 C 中 您可以使用用户定义的构造函数 例如https msdn microsoft c
  • 使用内置函数名称作为属性或方法标识符是不好的做法吗?

    我知道永远不要使用内置函数名称作为变量标识符 但是有什么理由不使用它们作为属性或方法标识符呢 例如 这样写是否安全my object id 5 或者定义一个实例方法dict在我自己的班级 它不会让解释器感到困惑 但可能会让阅读代码的人感到困
  • SIM工具包应用-Javacard开发套件

    我正在尝试开发 STK 应用程序 但我不知道在哪里可以获得开发套件 现在对于 Javacard 我从 Oracle 网站获得了一个 但它没有 sim toolkit 包 我不想从金雅拓等公司购买它 是否有任何 免费 实施 我已经找到了欧洲电
  • Ruby 单元测试:这是有效的(格式良好的)XML 文档吗?

    我正在创建一个 XML 文档 我想进行单元测试 至少确保其格式良好 到目前为止 我只能通过使用 REXML 库中的 hasElements 来近似这一点 有没有更好的办法 最好使用内置库 我的意思是标准 Ruby 1 8 x 发行版附带的库
  • eax 在 pt_regs 结构中的哪里?仅存在斧头

    我正在尝试使用pt regs用于获取和设置寄存器的结构 例如eax 但是编译错误告诉我pt regs没有该成员eax 但是 我能够得到ax登记 谁能告诉我发生了什么事吗 我正在使用 32 位 Ubuntu linux3 0 0核心 再次感谢
  • 检查数组中是否存在对象

    我有一个包含多个人物对象的数组 该对象如下所示 id 1 name Max Muster email email protected language German 现在 我在另一个数组中找到了对象 它们看起来并不完全相同 id 1 nam
  • 如果 Alamofire 图像中存在磁盘缓存图像,则使用磁盘缓存图像

    我正在使用阿拉莫火图像库来缓存下载的图像 Code import UIKit import AlamofireImage class ViewController UIViewController IBOutlet weak var fir
  • 如何让 Spoon 为 Espresso 测试截图?

    我一直在努力追随有关让 Spoon 1 1 14 为失败的 Espresso 测试截取屏幕截图的说明 配置此功能的最佳方法是什么自定义 Espresso FailureHandler 这是我目前正在做的事情 public class Mai
  • 阅读 WP8 上的 SSL 证书详细信息

    出于安全原因 我想阅读证书详细信息 例如到期日期或 CN 通常网络类中有一些可用的属性 允许检查证书 WP8 实现中缺少此功能 我还尝试创建一个 SslStream 但也无法获取任何证书详细信息 例如远程证书在 net 4 5 上 var
  • jQuery Mobile 更改下拉所选选项并刷新它

    我正在编写 jQuery 移动应用程序 我正在通过以下语句更改下拉选择的选项 DataBaseNames val db 我确信传递了正确的数据库值 因为我通过警报检查了它 当我深入下拉菜单时 它还显示所选的正确文本 但下拉菜单本身未显示所选
  • 将文件流式传输到 Pylons 中的 HTTP 响应

    我有一个 Pylons 控制器操作 需要将文件返回给客户端 该文件位于网络根目录之外 因此我不能直接链接到它 当然 最简单的方法是 with open filepath rb as f response write f read 这可行 但
  • 使用 pandas.DataFrame.interpolate 将行添加到 DataFrame

    我有一个具有以下格式的 Pandas 数据框 Frequency Value 1 10 2 8 2 20 2 5 3 30 2 2 4 40 2 3 我想用pandas DataFrame interpolate为了在频率 35 处添加一条
  • 为什么我的 vim 不知道我的别名?

    我使用了 alias ruby ruby1 9 1 所以我可以用这个执行我的 ruby 红宝石 123 rb or 红宝石1 9 1 123 rb 但在我的 vim 中 我使用 ruby 并得到 bin bash ruby 找不到命令 我必
  • 如何避免 Vscode 中将头文件放在与 src 不同的目录中时出现错误

    好吧 我在 VSCode 中遇到了错误问题 基本上我决定重新组织并将我的头文件移动到一个单独的文件夹 include 中 我的目录简单如下 build include SDL2 SDL2 Image someHeaderFile1 h so