c_cpp_properties.json 和 task.json 的使用
中VSCode,IntelliSense利用c_cpp_properties.json的includePath来定位标头用于自动完成的文件。然而,在编译代码时,开发人员经常遇到需要在task.json中显式指定包含路径的情况。
查询1:C任务的适当配置
应该包含在 c_cpp_properties.json 和 task.json 中指定的目录和库吗?答案是肯定的,因为构建系统和编辑器在 VSCode 中独立运行,都需要访问此信息。
建议:
保持跨构建环境的可移植性,最好避免直接在task.json中指定包含路径。相反,请考虑使用可以从命令行调用并在 task.json 中引用的单独构建系统。
查询 2:了解 includePath 和浏览
VSCode 提供用于解释 C 代码的两个系统:已弃用的“标签解析器”和较新的“Intellisense”。 includePath 由 Intellisense 使用,而 browser.path 由标签解析器使用。
建议:
为了获得最佳准确性和兼容性,我们强烈建议在“设置”中禁用标签解析器→ C/C → 智能感知引擎。通过将引擎设置为“默认”,您将确保 Intellisense 处理 C 解释。
示例配置:
提供的 c_cpp_properties.json 使用必要的配置来配置 IntelliSense include paths:
{ "configurations": [ { ... "includePath": [ "${workspaceFolder}/**", "D:/github/dependencies/SDL2-2.0.8/include" ], ... } ], ... }
对应的task.json,配置为调用GNU Make 实用程序,看起来像这样:
{ ... "tasks": [ { "label": "build", "type": "shell", "command": "make", "args": [] } ], ... }
结论:
在 c_cpp_properties.json 和 task.json 中双重包含包含路径是必要的VS 代码。然而,利用专用的构建系统并优先考虑智能感知而不是标签解析器将极大地增强您的 C 开发体验。
以上是我应该在 VSCode C 开发的'c_cpp_properties.json”和'task.json”中指定包含路径吗?的详细内容。更多信息请关注PHP中文网其他相关文章!