提示:使用环境为 MAC(M2)
其实 VSCode 很早就下载好了,但是因为在配置过程中总是遇到很多坑,搁置了很久,回头捡起遇到报 Error 还是两眼抓瞎,到处翻 blog。为了减少以后的遇坑可能性,整理了这份笔记(支持编译多cpp文件,支持C++11以上的新特性),希望能够帮助小白同学避坑。
分两个版本,本文是简洁的TLDR版本。
版本区别如下:
- 对于有时间的朋友:跳转查看【详细版本】。本着“授人以鱼不如授人以渔”的想法,和大多数的博客不同,此版本里除了详细记录了配置步骤,也基于官方文档拓展了配置文件所对应的功能和参数简介,能够让大家举一反三,后续碰到问题时快速做定位。
- 对于没耐心希望快速解决当前问题的朋友:查看当前的 TLDR(too long, dont read)版本。只包含教程步骤。
TLDR版本(Too Long, Don’t Read)
1. 安装 VSCode
2. 确保 Clang 安装
终端中输入命令:clang --version,有版本号的则为已安装
3. 安装扩展 C/C++
3. 创建 project 目录,包含 include、src、target 子目录
(1)include 中创建 print.h
#include <iostream>
#include <vector>
#include <string>
using namespace std;
void printMessage(vector<string>& msg);
(2)src 中创建 print.cpp
#include "../include/print.h"
void printMessage(vector<string> &msg)
{
for (const auto& word: msg){
cout << word << " ";
}
}
(3)src 中创建 hello.cpp
#include "../include/print.h"
int main(){
vector<string> msg{"Hello", "World"};
printMessage(msg);
}
4. 创建 4 个配置文件
(1)settings.json
Shift+Command+P(⇧⌘P
)打开命令面板,输入Select IntelliSense Configuration
,选择 Use clang++
这将在 project 中创建出一个.vscode
文件夹,内含一个settings.json
(2)tasks.json
打开 hello.cpp,点击图中右上角的按钮,选择 Run C/C++ File
在跳出的选项中,选择C/C++: clang++ build and debug active file
遇到错误不用怕,对创建出的.vscode/tasks.json
做三处修改:
- 把
"args"
中的:"${file}"
改为"${fileDirname}/*.cpp"
- 把
"args"
中的"${fileDirname}/${fileBasenameNoExtension}"
改为"${workspaceFolder}/target/${fileBasenameNoExtension}"
- 在
args
中添加"--std=c++17"
,这将使代码可以成功支持 C++17 的新特性
再次 run, 成功运行
(3)launch.json
还是打开 hello.cpp
点击右上角的 Add Debug Configuration
按钮
如果跳出选项,在跳出的选项里选择C/C++: clang++ build and debug active file
可以看到创建出了.vscode/launch.json
文件
(4)c_cpp_properties.json
Shift+Command+P(⇧⌘P
) 打开命令面板,输入C/C++: Edit Configurations (UI)
,打开。这将在.vscode
中创建一个c_cpp_properties.json
文件
修改三处:
"cStandard": "c17"
,"cppStandard": "c++17"
,"compilerPath": "/usr/bin/clang++"
。
5. 运行
右上角选择Run C/C++ File,成功运行
6. 调试
右上角选择Debug C/C++ File,成功调试