记录一下自己学习vscode的心得,CSDN上有许多相关的博客,本文不是为了解惑,而是为了记录自己学习编程的一些收获,方便后续复习和回忆,如误引用,万分抱歉。
1 vscode简介
vscode本质上是一款代码编辑器,就和vim一样,但是可以通过安装各种插件,实现不同系统,不同语言的个性化编程(跨平台,跨语言),且vscode实现了同步功能,在任何时间任何地点都可以进行创作,大大提高了编程效率
2 vscode配置
安装vscode是很简单的,直接在官网上下载安装即可,但是vscode的配置是比较繁琐的,这里以配置C++环境为例:
安装相关的C++插件
常用的C++插件就两个,C/C++和C/C++ Extension Pack,在插件窗口一搜就出来了
插件是为了实现vscode对C/C++的支持,本机还得安装相关的编译器和调试器
2. .vscode文件配置
.vscode中经常使用的文件有4个,分别为c_cpp_properties.json, task.json, launch.json, setting.json,配置的先后顺序如同列举的顺序一样。
使用c_cpp_properties文件配置编译器路径,这里需要注意的是,如果是在windows上使用gcc编译器,需要安装mingw编译器,同时将"intelliSenseMode"字段设置为"windows-gcc-x64",配置代码如下:
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"windowsSdkVersion": "10.0.19041.0",
"compilerPath": "C:/mingw64/bin/gcc.exe",
"cStandard": "c17",
"cppStandard": "c++17",
"intelliSenseMode": "windows-gcc-x64"
}
],
"version": 4
}
使用task文件配置运行环境,此文件对应的是C++编译器,配置好后,就可以正常运行程序了,会生成相应的exe执行文件,配置代码如下:
{
"version": "2.0.0",
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: gcc.exe 生成活动文件",
"command": "C:/mingw64/bin/gcc.exe",
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "C:/mingw64/bin"
},
"problemMatcher": [
"$gcc"
],
"group": "build",
"detail": "编译器: C:/mingw64/bin/gcc.exe"
},
{
"type": "cppbuild",
"label": "C/C++: g++.exe 生成活动文件",
"command": "C:\\mingw64\\bin\\g++.exe",
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "调试器生成的任务。"
}
]
}
使用launch文件配置调试器路径,一般使用的调试器为gdb,值得注意的是,调试的对象是exe文件,如果exe文件的路径包含中文字符,调试将报错,所以,不要将需要调试的文件放在中文路径下(其实作为一个良好的编程习惯,用于开发的文件夹命名都应该是英文的,毕竟windows和Linux系统都是外国的),配置代码如下:
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [{
"name": "(gdb) 启动",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "C:\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
{
"description": "将反汇编风格设置为 Intel",
"text": "-gdb-set disassembly-flavor intel",
"ignoreFailures": true
}
],
"preLaunchTask": "C/C++: gcc.exe 生成活动文件",
}
]
}
使用setting文件配置编辑器和插件,本人使用较少,若后续有所使用,再来完善;
最后,还有两个配置文件extensions.json和xxxxxxx.code-snippets,extensions.json用来推荐当前项目使用的插件,方便分享;而xxxxxxx.code-snippets用来生成共享的代码片段,提高编程效率。
3 vscode使用感悟
vscode本身只是一款代码编辑器,但是由于它强大的扩展性,可以将vscode打造成极具个人特色的IDE(vscode一切配置皆文件,这也是我选择vscode的原因),安装各种具有某一特定的插件,可以大大提高自己的编程效率和程序的可读性,vscode最重要的就是搭建某一项目的开发环境(使用的语言,安装的插件,编译器,调试器),其实就是配置各种json文件,只要弄清楚了json格式,再加上一点耐心,就可以很好的完成此项过程(相比于市面上的其他IDE, 如VS, Pycharm,可能这一步有点繁琐),开发环境搭建好之后,就可以开始写代码了。但是,我们一般在进行文件编译时,不会直接使用gcc,而是使用的是cmake(其实本质上还是调用了gcc,只是cmake适合编译多文件,多目录的大项目),而vscode中也可以安装cmake插件(本机还是需要安装cmake编译器),从而在vscode上也能进行大项目开发,而vscode + cmake也是我进行C++项目开发的选择,最后,强调一点,编程文件命名一定不要含中文!