Visual studio code ${relativeFileDirname}不';t在tasks.json中解析

Visual studio code ${relativeFileDirname}不';t在tasks.json中解析,visual-studio-code,vscode-settings,vscode-tasks,Visual Studio Code,Vscode Settings,Vscode Tasks,以下是我的tasks.json供参考: { “版本”:“2.0.0”, “任务”:[ { “类型”:“cppbuild”, “标签”:“使用调试生成活动文件”, “命令”:“/usr/bin/g++”, “args”:[ “${file}”, “-o”, “${workspaceFolder}/out/${relativeFileDirname}.out”, “-g” ], “problemMatcher”:[“$gcc”], “组”:“构建”, “详细信息”:“编译器:/usr/bin/g++

以下是我的
tasks.json
供参考:

{
“版本”:“2.0.0”,
“任务”:[
{
“类型”:“cppbuild”,
“标签”:“使用调试生成活动文件”,
“命令”:“/usr/bin/g++”,
“args”:[
“${file}”,
“-o”,
“${workspaceFolder}/out/${relativeFileDirname}.out”,
“-g”
],
“problemMatcher”:[“$gcc”],
“组”:“构建”,
“详细信息”:“编译器:/usr/bin/g++”
},
]
}
以下是演示输出的视频:

在视频中,我正在编译一个文件
12如何有效调试/main.cpp
,根据我的
tasks.json
,输出文件应该是
out/12如何有效调试.out
,但由于某些原因,变量替换不起作用,我得到了
out/.out


任何可能出错的指针?

cppbuild
不是
类型
参数的有效值

VSC文档站点上的所有示例都使用
“type”:“shell”

当使用
“type”:“shell”
时,我可以看到要执行的命令和正确填写的变量。(我使用了一个1字的子目录
mysite


使用
“类型”:“cppbuild”
我看不出执行了哪个命令。

终端中有
g++
的完整命令是什么?我不知道你的意思,但是
哪个g++
给出了
/usr/bin/g++
只要
/usr/bin/g++
你就不能编译程序了。请告诉我接下来需要做什么。使用一个简单的
echo
任务并找到它当编辑器是cpp文件时,哪些变量起作用