{"version":"2.0.0","tasks":[{"type":"cppbuild","label":"MSVC: 编译 C++ 项目","command":"cl.exe","args":["/Zi","/EHsc","/Od","/Fo:${workspaceFolder}/build/obj/","/Fe:${workspaceFolder}/build/bin/output.exe","${workspaceFolder}/src/*.cpp","/LIBPATH:${workspaceFolder}/lib","mylib.lib"],"options":{"cwd":"${workspaceFolder}","shell":{"executable":"cmd.exe","args":["/c","if not exist build\\obj md build\\obj && if not exist build\\bin md build\\bin"]}},"problemMatcher":["$msvc"],"group":{"kind":"build","isDefault":true},"detail":"MSVC 编译:输出到 build/obj(.obj)和 build/bin(.exe)"},{"label":"MSVC: 清理文件","command":"del","args":["${workspaceFolder}/build/obj/*.obj","${workspaceFolder}/build/bin/*.exe","${workspaceFolder}/build/bin/*.pdb"],"type":"shell","problemMatcher":[]}]}
3. 配置 launch.json(调试配置)
作用:关联编译产物,启动调试器(MSVC 用 cppvsdbg),支持断点、变量监控。
{"version":"0.2.0","configurations":[{"name":"MSVC: 调试 C++ 项目","type":"cppvsdbg","request":"launch","program":"${workspaceFolder}/build/bin/output.exe","args":[],"stopAtEntry":false,"cwd":"${workspaceFolder}","environment":[],"externalConsole":true,"preLaunchTask":"MSVC: 编译 C++ 项目"}]}
{"version":"0.2.0","configurations":[{"name":"GCC: 调试 C++ 项目","type":"cppdbg","request":"launch","program":"${workspaceFolder}/build/bin/output.exe","args":[],"stopAtEntry":false,"cwd":"${workspaceFolder}","environment":[],"externalConsole":true,"MIMode":"gdb","setupCommands":[{"description":"启用 GDB 整齐打印","text":"-enable-pretty-printing","ignoreFailures":true}],"preLaunchTask":"GCC: 编译 C++ 项目","miDebuggerPath":"gdb.exe"}]}