0.前言

  本文已配置C++环境为例,本文主要是面向刚开始接触VS Code的朋友,采用生成默认配置任务的方法,在编写本文过程中大量参考了官方文档,感兴趣的朋友可直接前往传送门。

环境: win10 + VS Code 1.43.1

官方下载地址:https://code.visualstudio.com/

官方文档传送门:https://code.visualstudio.com/docs

1. 从官方下载地址下载VS Code并安装,安装过程应尽量避免中文路径。

2. 打开软件,在VSCode最左侧有五个选项,从上到下依次为资源管理器、搜索、源代码管理器、运行和extension。截图中含有task.json等文件,先不用管它们,刚开始配置是没有这些文件的。

图1

3. 安装extension

  根据个人喜好可以安装不同的扩展(extension),点击最后一个选项搜索即可,上述是安装了中文插件后截图,直接键入Chinese,第一个即为中文扩展。同样地,键入C++,然后安装扩展。

4.下载C++编译器

  这里下载mingW-W64,下载传送门:http://mingw-w64.org/doku.php/download。下载中间这个,并安装,安装过程中的setting一般保持默认设置,其他的根据需要修改。安装完成后,需要将安装路径添加到系统环境变量中,即“路径\mingw64\bin”,安装完成后需要重启。

5.配置环境

  在配置环境过程中,会产生一个.vscode 文件夹,里面包含三个配置文件:

tasks.json:编译指令  (build instructions)
launch.json:调试设置 (debugger settings)
c_cpp_properties.json:编译器路径和IntelliSense设置 (compiler path and IntelliSense settings)

(1)配置task.json

  首先,在目标目录下新建文件夹vscode(当然名称随你喜好),然后如图2,依次打开:文件-->打开文件夹-->选择vscode,结果如图3。点击图3方框中“新建文件”新建main.cpp,并粘贴以下代码,结果如图4.

#include <iostream>
#include <vector>
#include <string> using namespace std; int main()
{
vector<string> msg {"Hello", "C++", "World", "from", "VS Code", "and the C++ extension!"}; for (const string& word : msg)
{
cout << word << " ";
}
cout << endl;
}

图2

图3

图4

然后依次点击最上方工具栏中 终端-->配置默认生成任务,然后选择C/C++:g++.exe build active file ,结果如图7,如果这里弹出的候选方式中没有“C/C++:g++.exe build active file”,可参考附录解决方法。

图5

图6

图7

为了更方便注释与说明,将tasks.json写在下面,需要注意的是在VS Code中路径中是”\\“而不是单个"\",与visual studio2015一致。

{
// 有关 tasks.json 格式的文档,请参见
// https://go.microsoft.com/fwlink/?LinkId=733558
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "g++.exe build active file",                // label:左侧”运行“选项中编译器的名称,可以任意指定。
"command": "D:\\4.Software\\mingw-W64\\mingw64\\bin\\g++.exe", // command:指定了本程序运行编译器的路径,这里是g++.exe。
"args": [                                 // args: args数组指定了传递给编译器的命令(commamd-line)参数,通过这个参数数组会告诉编译器
"-g",                                 // 处理的是”${file}“文件,并且在${fileDirname}目录下生成${fileBasenameNoExtension}.exe 
"${file}",                               
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "D:\\4.Software\\mingw-W64\\mingw64\\bin"
},
"problemMatcher": [                           // problemMathcher: The problemMatcher value selects the output parser to use for finding errors and warnings in the compiler output.
"$gcc"
],
"group": {
"kind": "build", // group中的”isDefault“参数仅仅是为了方便,当其为True时,可通过快捷键ctrl+shift+B运行生成任务,如果为False,无法通过快捷键生成,但可以通过 终端-->运行生成任务。
"isDefault": true
}
}
]
}

回到main.cpp,点击 终端 -->运行生成任务,在底部终端会显示"终端被任务重用,按任意键继续" 。 同时也可以看到有两个参数,其对应于tasks.json中的args数组,-g参数表示当前编译的是main.cpp,-o参数表示当前生成的可执行exe文件的名称和路径。

图8

图9

(2) 配置调试器 debugger

依次点击 运行-->启动调试,出现图11所示,然后选择”C++(GDB/LLB)“,出现图12,选择第一个g++.exe,然后自动生成launch.json。

图10

图11

图12

launch.json如下:

{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "g++.exe build and debug active file",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe", //正调试的可执行文件路径
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "D:\\4.Software\\mingw-W64\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "g++.exe build active file"
}
]
}

(3) 配置 c_cpp_properties.json

ctrl+shift+p然后键入C/C++,选择"C/C++编辑配置(UI)"然后自动生成c_cpp_properties.json。

图13

图14

c_cpp_properties.json:

{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"compilerPath": "D:\\4.Software\\mingw-W64\\mingw64\\bin\\gcc.exe",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "clang-x64"
}
],
"version":
}

结语

  本文主要记录初次使用VS Code配置过程,在这三个json文件中一些参数的具体含义现在还没弄懂,后续会继续更新VS Code使用相关文章,欢迎继续关注。(Date on 25, Mar, 2020)

其他博客配置方法:

[1] https://zhuanlan.zhihu.com/p/110027894?from_voters_page=true

附录

在配置默认生成任务时,可能会出现无“C/C++:g++.exe build active file”的情况,那么就需要手动改改。

ctrl+shift+p然后键入C/C++,选择"C/C++编辑配置(UI)"然后自动生成c_cpp_properties.json。就像上边的(3) 配置 c_cpp_properties.json一样,找到“编译器路径”,然后再下拉框中选择g++,值得注意的是,如果先前存在tasks.json,最好先删掉,然后选择g++,再手动生成默认配置任务。

【C++】VS Code配置的更多相关文章

  1. React-Native(二):React Native开发工具vs code配置

    从网上翻阅了一些开发react-native的开发工具时,发现其实可选的工具还是比较多的Sublime Text,WebStrom,Atom+Nuclide,vs code 等.因为我用.net生态环 ...

  2. VS code 配置为 Python R LaTeX IDE

    VS code配置为Python R LaTeX IDE VS code的中文断行.编辑功能强大,配置简单. VSC的扩展在应用商店搜索安装,快捷键ctrl+shift+x调出应用商店. 安装扩展后, ...

  3. VS code配置go语言开发环境之自定义快捷键及其对应操作

    VS code 配置 自定义快捷键 及其对应操作   由于 vs code 的官方 go 插件不支持像 goland 一样运行当前 go 文件, 只能项目 或者 package 级别地运行, 因此有必 ...

  4. 利用 Settings Sync 同步vs code配置

    vs code上有各种各样不同的插件,如果要在不同的电脑上使用 vs code 配置是件比较麻烦的事情,使用 Settings Sync 将 vs code 配置备份起来,当需要在其他电脑使用  vs ...

  5. VS Code配置初探

    之前一直在用 Webstorm,看现在 VS Code 热度那么高,想着尝试一下. 熟悉编辑器的快捷键 VS Code 快捷键一览 安装使用到的插件 Chinese(修改你的编辑器语言,默认英文) E ...

  6. Windows 10 Mac 为Vs Code配置C/C++环境

    2019-06-10 更新: 加上Mac版本的Vscode配置文件 0.前言 实现效果:右键一键编译运行C/C++文件 Vs code的代码效果很好看,也很轻量,所以想为Vs Code配置C/C++环 ...

  7. Visual Studio Code配置 HTML 开发环境

    Visual Studio Code配置 HTML 开发环境 https://v.qq.com/x/page/l0532svf47c.html?spm=a2h0k.11417342.searchres ...

  8. Visual Studio Code配置GoLang开发环境

    Visual Studio Code配置GoLang开发环境 在Visual Studio Code配置GoLang开发环境 作者:chszs,未经博主允许不得转载.经许可的转载需注明作者和博客主页: ...

  9. Visual Studio Code配置

    Visual Studio Code 从1.23.0开始VS Code就不再默认提供各语言版本, 而是改为使用插件的方式提供语言包. 在插件商店搜索Chinese (Simplified), 安装. ...

  10. VS Code配置Go语言开发环境

    VS Code是微软开源的一款编辑器,插件系统十分的丰富.本文就介绍了如何使用VS Code搭建Go语言开发环境. VS Code配置Go语言开发环境 说在前面的话,Go语言是采用UTF8编码的,理论 ...

随机推荐

  1. P2542 【[AHOI2005]航线规划】

    P2542 [[AHOI2005]航线规划] 一个无向图,m个操作 删去一条边 给定两个点,求有多少边使得如果这条边不存在,给定的两个点不连通 一般这种删边的题目,考虑逆序加边处理 在删完的图中,任意 ...

  2. python(configparser 模块)

    1.下载安装 configparser 第三方模块 pip install configparser 2.读取配置文件 #配置文件内容如下 """ "D:/co ...

  3. jmeter4.0,启动jmeter.bat闪退问题

    问题描述: 电脑重装win10系统,配置好了java环境后,解压jmeter的zip包,然后按照网上的教程配置环境变量,然后兴冲冲启动jmeter.bat,结果,闪退,甚至连个报错信息都没有... 然 ...

  4. golang之method

    method Go does not have classes. However, you can define methods on types. package main import ( &qu ...

  5. 树莓派4B踩坑指南 - (15)搭建在线python IDE

    今天想在树莓派上自己搭一个在线的python IDE,于是找到了一篇教程--Fred913大神的从头开始制作OJ-在线IDE的搭建 自己尝试动手做了一下, 还是发现不少细节需要注意, 记录在此 如果不 ...

  6. Linova and Kingdom(树型-贪心)

    题目大意:给定一棵树,1为首都(首都可以是工业城市也可以是旅游城市),一共有n个点. 其中要选出k个工业城市,每个工业城市出一个代表去首都,其快乐值是其途径旅游城市(非工业)的个数 求所有快乐值相加的 ...

  7. C - 小明系列故事――捉迷藏 HDU - 4528 bfs +状压 旅游-- 最短路+状压

    C - 小明系列故事――捉迷藏 HDU - 4528 这个题目看了一下题解,感觉没有很难,应该是可以自己敲出来的,感觉自己好蠢... 这个是一个bfs 用bfs就很好写了,首先可以预处理出大明和二明能 ...

  8. H - Fire CodeForces - 864E 01背包

    https://codeforces.com/problemset/problem/864/E 这个题目要把这个按照物品毁灭时间进行排序,如果时间短就要排在前面,这个是因为要保证之后的物品的拯救不会影 ...

  9. rsync 服务及部署

    1 rsync简介 1.1 什么是rsync rsync: - a fast, versatile, remote (and local) file-copying toolrsync:是一种快速,多 ...

  10. STM32 使用st-link调试遇到写保护 Flash Timeout 问题的解决思路

    本文介绍了如何解决STM32芯片Flash写保护导致无法下载程序,无法在线调试的问题:如果您遇到相同的问题,希望本文可以带来一些帮助: 如果本文帮到了您,请帮忙点个赞