【vscode使用说明】
tasks.json
作用
tasks.json 文件用于定义和配置可以在 VSCode 中运行的任务。这些任务通常包括编译代码、构建项目、运行脚本等。
位置:通常位于项目根目录下的 .vscode 文件夹中。
主要字段
-
version:
- 类型:字符串
- 描述:指定 tasks.json 文件的版本。当前版本通常是 2.0.0。
-
tasks:
- 类型:数组
- 描述:包含一个或多个任务对象。
-
label:
- 类型:字符串
- 描述:任务的名称,显示在任务列表中。
-
type:
- 类型:字符串
- 描述:指定任务的类型。常见的类型有 shell 和 process。
- shell:在终端中运行命令。
- process:直接调用进程。
-
command:
- 类型:字符串
- 描述:要执行的命令。
-
args:
- 类型:数组
- 描述:传递给命令的参数。
-
group:
- 类型:对象
- 描述:指定任务组。常见的组有 build 和 test。
- kind:任务组的类型。
- isDefault:是否为默认任务组。
-
problemMatcher:
- 类型:字符串或数组
- 描述:指定问题匹配器,用于解析命令输出中的错误和警告信息。常见的匹配器有 gcc、gcc、gcc、msCompile 等。
示例
{"version": "2.0.0","tasks": [;{"label": "build","type": "shell","command": "g++","args": [;"-g","${file}","-o","${fileDirname}\${fileBasenameNoExtension}.exe"];,"group": {"kind": "build","isDefault": true},"problemMatcher": ["$gcc"];}];
}
launch.json
作用
launch.json 文件用于配置调试器,定义如何启动和调试程序。它允许你在 VSCode 中设置断点、单步执行代码、查看变量值等。
位置: 通常位于项目根目录下的 .vscode 文件夹中。
主要字段
- version:
- 类型:字符串
- 描述:指定 launch.json 文件的版本。当前版本通常是 0.2.0。
- configurations:
- 类型:数组
- 描述:包含一个或多个调试配置对象。
- name:
- 类型:字符串
- 描述:调试配置的名称,显示在调试面板的启动配置下拉列表中。
- type:
- 类型:字符串
- 描述:指定调试器的类型。常见的类型有 cppdbg(C++ 调试)、node(Node.js 调试)等。
- request:
- 类型:字符串
- 描述:指定调试请求的类型。常见的值有 launch(启动一个新的程序进行调试)和 attach(附加到一个已经运行的程序)。
- program:
- 类型:字符串
- 描述:指定要调试的可执行文件的路径。
- args:
- 类型:数组
- 描述:传递给可执行文件的命令行参数。
- stopAtEntry:
- 类型:布尔值
- 描述:指定调试器是否在程序入口点停止。
- cwd:
- 类型:字符串
- 描述:指定工作目录,即程序启动时的当前目录。
- environment:
- 类型:数组
- 描述:指定环境变量。数组中的每个元素是一个对象,包含 name 和 value 属性。
- externalConsole:
- 类型:布尔值
- 描述:指定是否在外部终端中启动程序。
- MIMode:
- 类型:字符串
- 描述:指定调试器的类型。常见的值有 gdb(GDB 调试器)和 lldb(LLDB 调试器)。
- miDebuggerPath:
- 类型:字符串
- 描述:指定调试器的路径。
- setupCommands:
- 类型:数组
- 描述:指定在调试会话启动时发送给调试器的命令。
- preLaunchTask:
- 类型:字符串
- 描述:指定在启动调试会话之前运行的任务。这个任务必须在 tasks.json 文件中定义,且 label 必须与 preLaunchTask 的值一致。
示例
{"version": "0.2.0","configurations": [;{"name": "Debug","type": "cppdbg","request": "launch","program": "${fileDirname}\${fileBasenameNoExtension}.exe","args": [],"stopAtEntry": false,"cwd": "${fileDirname}","environment": [],"externalConsole": true,"MIMode": "gdb","miDebuggerPath": "C:\mingw64\bin\gdb.exe", // 修改为你的gdb路径"setupCommands": [{"description": "Enable pretty-printing","text": "-enable-pretty-printing","ignoreFailures": true}],"preLaunchTask": "build" // 必须与 tasks.json 中的 label 一致}]}
总结
- tasks.json:用于定义和配置任务,如编译代码、构建项目等。
- launch.json:用于配置调试器,定义如何启动和调试程序。