首页 > 解决方案 > VSCode中的Cpp - 如何编译到其他文件夹

问题描述

我正在使用 VSCode 在 C++ 中编程。
当我运行代码(使用“Code Runner”扩展名)时,该.exe文件存储在同一文件夹中。
我在许多项目中看到他们将其存储在一个/bin文件夹中。
是否可以自动将其存储在其中?/bin(如果文件夹不存在,也要创建它)。
谢谢!

标签: c++visual-studio-codevscode-settingsvscode-code-runner

解决方案


我想出了两种方法来完成你的任务:

  1. 在这种情况下,您必须手动创建bin文件夹

    所以让我们配置你的 VScode 扩展

    从扩展页面按照此步骤打开设置

    从扩展页面按照此步骤打开设置 在此处输入图像描述

    在设置选项卡中打开“在 settings.json 中编辑”

    在此处输入图像描述

    在您的 Json 中找到 "code-runner.executorMap"::cpp 并插入以下命令而不是现有命令

    cd $dir/bin && g++ ../$fileName -o $fileNameWithoutExt && $fileNameWithoutExt
    

    所以它看起来像这样 在此处输入图像描述

    PS 此命令适用于 Windows,可能不适用于 linux。我猜如果上一个命令在linux中不起作用,那么尝试下一个

    cd $dir/bin && g++ ../$fileName -o $fileNameWithoutExt && ./$fileNameWithoutExt
    

    而且我认为,如果您是 linux 用户,您可以使用命令自动执行所有操作(但不幸的是我无法测试它)

    cd $dir && mkdir -p bin && cd bin && g++ ../$fileName -o $fileNameWithoutExt && ./$fileNameWithoutExt
    
  2. 在这种情况下,您必须通过以下行添加到您的 json 来将执行切换到集成终端(因此输出会有所变化)

    "code-runner.runInTerminal": true
    

    并将您的 cpp 命令更改为:

    用于窗户

    cd $dir && mkdir -Force bin > $null && cd bin && g++ ../$fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt
    

    我猜对于 linux

    cd $dir && mkdir -p bin && cd bin && g++ ../$fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt
    

    所以它看起来像这样 在此处输入图像描述


推荐阅读