VS Code: изменение командной строки при компиляции - PullRequest
0 голосов
/ 03 августа 2020

Программа: VS Code 1.47.3
Пакет, использующий: https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools

#include <iostream>

int main()
{
    int a{7}; // it is not supported in VS code
    std::cout << a << '\n';
    return 0;
}

, когда я нажимаю кнопку запуска, терминал показывает такую ​​команду -

$ cd "/ Users / xxxx / Desktop / C ++ / C ++ /" && g ++ пример. cpp -o пример && "/ Users / xxxx / Desktop / C ++ / C ++ /" пример

Я хочу изменить команду basi c на это при компиляции

$ cd "/ Users / xxxx / Desktop / C ++ / C ++ /" && g ++ example. cpp -std = c ++ 17 -o пример && "/ Users / xxxx / Desktop / C ++ / C ++ /" пример

Так что мне не нужно вводить '- std = c ++ 17 'каждый раз, когда я выполняю.

задачи. json

{
    "version": "2.0.0",
    "tasks": [
        {
            "type": "shell",
            "label": "C/C++: g++ build active file",
            "command": "/usr/bin/g++",
            "args": [
                "-g",
                "${file}",
                "-o",
                "${fileDirname}/${fileBasenameNoExtension}"
            ],
            "options": {
                "cwd": "${workspaceFolder}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}

извините за плохой английский sh.

1 Ответ

0 голосов
/ 03 августа 2020

Измените конфигурацию на:

...
"args": [
    "-std=c++17",
    "-g",
    "${file}",
    "-o",
    "${fileDirname}/${fileBasenameNoExtension}"
],
...

EDIT: Поскольку вы упомянули:

Я пробовал, и ничего не изменилось. Выполняемая команда осталась прежней.

Возможно, в вашем VS Code что-то не так с конфигурацией, вам следует подумать об удалении папки .vscode в вашем рабочем пространстве и создать fre sh один. Я правильно описал в этой ветке SO .

...