VScode配置文件launch.json 和 tasks.json配置项详细说明

tasks.json

tasks.json为编译配置文件

cpp 复制代码
{
    "version": "2.0.0",  // tasks.json 文件的版本号

    "tasks": [  // 任务数组,包含一个编译任务配置对象
        {
            "type": "cppbuild",  // 任务类型,这里是 cppbuild 类型

            "label": "compile",  // 任务的标签,用于在命令面板中显示

            "command": "/usr/bin/g++",  // 编译命令的路径

            "args": [  // 编译命令的参数
                "-g",  // 添加 gdb 调试选项
                "${file}",  // 当前活动文件的路径
                "-o",  // 指定生成可执行文件的名称
                "${fileDirname}/${fileBasenameNoExtension}"  // 生成的可执行文件的路径和名称
            ],

            "options": {  // 任务选项
                "cwd": "${fileDirname}"  // 任务执行时的工作目录
            },

            "problemMatcher": [  // 问题匹配器,用于捕获并处理编译错误信息
                "$gcc"  // 使用预定义的 gcc 问题匹配器
            ],

            "group": {  // 任务分组
                "kind": "build",  // 任务的分组类型为构建
                "isDefault": true  // 表示快捷键 Ctrl+Shift+B 可以运行该任务
            },

            "detail": "compiler: /usr/bin/g++"  // 任务的详细信息,描述该任务使用的编译器路径
        }
    ]
}

launch.json

launch.json为调试配置文件

cpp 复制代码
{
    "version": "0.2.0", // launch.json 文件的版本号

    "configurations": [ // 配置数组,包含一个调试配置对象
        {
            "name": "(gdb) Launch", // 调试配置的名称,显示在调试器界面中

            "type": "cppdbg", // 调试器类型,这是 C++ 调试器的类型

            "request": "launch", // 调试请求类型,表示启动新的调试会话

            "program": "${workspaceFolder}/build/main", // 要调试的程序的入口文件路径

            "args": [], // 传递给程序的命令行参数,当前为空数组

            "stopAtEntry": false, // 是否在程序入口处自动中断,这里设置为不中断

            "cwd": "${workspaceFolder}/build", // 程序的当前工作目录

            "environment": [], // 环境变量的配置,当前为空数组

            "externalConsole": false, // 是否使用外部控制台窗口,这里设置为不使用

            "MIMode": "gdb", // 调试器的模式,这里使用 GDB 调试器

            "preLaunchTask": "compile", // 调试会话之前执行的任务名称

            "setupCommands": [ // GDB 初始化命令列表
                {
                    "description": "Enable pretty-printing for gdb", // 命令描述
                    "text": "-enable-pretty-printing", // GDB 命令
                    "ignoreFailures": true // 如果命令执行失败是否忽略
                }
            ],

            "miDebuggerPath": "/usr/bin/gdb" // GDB 可执行文件的路径
        }
    ]
}
相关推荐
爱就是恒久忍耐14 天前
VSCode里如何比较2个branch
ide·vscode·编辑器
意法半导体STM3214 天前
【官方原创】如何为STM32CubeMX2配置Visual Studio Code配置方案
vscode·stm32·单片机·嵌入式硬件·策略模式·stm32cubemx·嵌入式开发
bloglin9999914 天前
vscode中可视化的合并分支,在“合并编辑器中解析”中“与基线进行比较”是什么意思
ide·vscode·编辑器
天疆说15 天前
在 Ubuntu 的 VSCode 中配置 MATLAB
vscode·ubuntu·matlab
春日见15 天前
vscode的AI编程插件推荐:
大数据·ide·vscode·算法·机器学习·编辑器·ai编程
jieshenai15 天前
VScode sys.path,并使CTRL+左键可访问源码
ide·vscode·编辑器
qq_4480111615 天前
VSCode环境搭建
ide·vscode·编辑器
qq_3384323715 天前
VSCode Remote-SSH 远程 Windows Server 卡死的排查与解决
windows·vscode·ssh
console.log('npc')16 天前
Codex 桌面端接入 Headroom 压缩代理完整教程
前端·vscode
女神下凡16 天前
这是 Cursor(Composer) 的五种核心交互模式
服务器·人工智能·windows·vscode·microsoft