- 本文与 B站视频链接 对应
- 以下为本次课程的图文内容
1. 开发环境搭建:
-
安装mingw-w64编译器(GCC for Windows 64 & 32 bits)、Cmake工具(选装)
-
可自行去官网下载,网速较慢,让人崩溃
-
公众号
VSCode
回复cpp
可下载以上安装包 -
设置环境变量,并检查是否安装成功
-
-
VSCode插件安装
- C/C++
- cmake(选装)
- cmake tools(选装)
2. 代码实践演练:
-
基于g++命令
- g++编译单文件,生成带调试信息的可执行文件、并调试
g++ -g main.cpp -o my_single_swap # -g 生成带调试信息的可执行文件 # -o 指定生成可执行文件的名字
- g++编译多文件,生成带调试信息的可执行文件、并调试
g++ -g main.cpp swap.cpp -o my_multi_swap # -g 生成带调试信息的可执行文件 # -o 指定生成可执行文件的名字
-
基于cmake
- 编写最简单的CMakeLists.txt
# 指定Cmake工程名 project(MYSWAP) # 编译main.cpp swap.cpp,生成my_cmake_swap.exe的可执行文件 add_executable(my_cmake_swap, main.cpp swap.cpp)
- 进行多文件编译,并调试
# 新建build文件夹 mkdir build # 进入到build目录 cd build # 如果电脑上已安装了VS,可能会调用微软MSVC编译器, # 使用(cmake -G "MinGW Makefiles" ..) 代替(cmake ..) # 仅第一次使用cmake时使用(cmake -G "MinGW Makefiles" ..),后面可使用(cmake ..) # cmake编译上级目录 cmake .. # 执行windows下的make指令 mingw32-make.exe
-
配置json
- launch.json – for debug
作用:配置调试信息,用来调试编译好的文件:
- program:可执行文件的路径;
- preLaunchTask:执行调试前所执行的task
- tasks.json – for build before debug
作用:包含调试前的操作指令,用来做调试前的编译工作
- 可以避免每次修改代码后,手动编译;即tasks.json其实是和手动编译的作用等价的。
- tasks.json包含了某个task的编译命令: 编译代码,并生成可执行文件。
- label 应与launch.json中的preLaunchTask名字一致
👇用一个图表示两者的关系(可根据我的配置视频自行领会)👇
👇下面列出视频教程中给出的CMake工程的tasks.json,供大家参考👇
{
"version": "2.0.0",
"options": {
"cwd": "${workspaceFolder}/build"
},
"tasks": [
{
"type": "shell",
"label": "cmake",
"command": "cmake",
"args": [
".."
]
},
{
"label": "make",
"group": {
"kind": "build",
"isDefault": true
},
"command": "mingw32-make.exe",
"args": [
]
},
{
"label": "Build",
"dependsOn":[
"cmake",
"make"
]
}
],
}
由于第二部分视频较长,此处图文不再赘述,建议大家点击B站视频链接进行观看
3. 疑问解答
⚪公众号VSCode
回复cpp
可下载mingw-64压缩包,cmake压缩包,cmake工程的tasks.json样例。
⚪学习VSCode:
-
QQ群:
791402668
提问,看见问题立即回复 -
本期视频会同步
图文
到公众号 -
公众号会不定期发布VSCode使用的一些技巧和心得体会