我想尝试一下VSCode。 是否可以为所有.cpp文件设置编译和生成命令?就像在盖尼吗?每种支持的语言都可以做到这一点吗?
在这里和那里搜索似乎我必须在task.json中为每个项目(甚至是指向iostream的链接)进行设置
答案 0 :(得分:1)
launch.json
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"miDebuggerPath": "Example:/Your/path/to/gdb",
"preLaunchTask": "g++",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
},
tasks.json
{
"version": "2.0.0",
"command": "g++",
"args": [
"-g",
"${file}",
"-o",
"${fileBasenameNoExtension}.exe"
],
"problemMatcher": { "owner": "cpp", "fileLocation": ["relative", "${workspaceRoot}"],
"pattern": { "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"message": 5 }
}
}
这是C / C ++扩展的解决方案。也许您必须在.cpp文件的末尾设置一个断点。 或者,您可以安装代码运行程序扩展。 您可以将两个文件添加到C:/ Users / someone / AppData / Roming / Code / User /,以便可以编译所有.cpp文件。
答案 1 :(得分:0)
从这里:https://github.com/Microsoft/vscode/issues/1435#issuecomment-433324050
task.json文件中的全局任务仍在议程中(以与launch.json保持一致)。但是,何时出现优先级问题。
所以答案是:还没有。