写在前面:youtube上的视频内容需要科学上网,并非配置必须,选看
看我的博客内容应该也能成功配置实现 Run and Debug
首先,因为感觉clion的debug功能自己用的不是很舒服,所以尝试了去想用vscode去编写c++程序(主要用来写算法题)
这里放出Visual Studio Code的官方文档讲解编译器配置的地址:Configure VS Code for Clang/LLVM on macOS
但是我跟着这个教程有点被他带晕的感觉,配完了也没运行地很正常,debug还不是很友好
后来自己也去油管上看完了所有能搜到的关于 Configure VScode for C++ on macOS的视频
这里贴一个讲解task.json还比较清晰的youtuber的视频地址:Nic Raboy - Configuring Visual Studio Code For C++ Projects
我们实现程序运行和debug任务需要配合三个json文件:
- tasks.json
- launch.json
- c_cpp_properties.json
下面还会讲解这三个json文件的作用以及内容含义
- 我们看到vscode左侧的5个图标。自上向下简单介绍
- 最上方的是文件目录结构展示
- 第二个放大镜是全局关键字内容搜索;
- 第三个我这里挂着5k标的是源代码管理工具(我暂时没用到过)
- 第四个是debug功能(小虫子)的入口
- 最后一个是扩展extension工具的下载搜索栏目
两个差不多是必须的extension展示如下:(当然也有不安装插件就能成功运行的办法,感觉不靠谱,我自己也没尝试,不介绍)
这里为了方便后面配置debug功能,我们再安装一个插件:
等待3个插件都安装完成后,打开终端,选择一个你喜欢的位置作为vscode的workspace
我这里选择了自己的桌面,所以我的终端命令步骤:
# 将当前目录切换到喜欢的workspace
cd Desktop
# 创建一个项目文件夹,以便在其中存储小的项目用,方便管理代码
mkdir projects
cd projects
# 在项目文件夹下,创建小的文件夹,比如我需要在其中写Leetcode的代码
mkdir Leetcode
cd Leetcode
# 在当前目录下打开vscode
code .
这时候就会弹出一个比较纯净的vscode界面
点击最左侧的 file+ 来创建第一个cpp文件
比如我这里想要写Leetcode的第一个题-------两数之和,那么我就将文件命名为-----1两数之和.cpp (取名只是举例,随意)
接下来配置tasks.json文件,上方的功能栏----终端---配置默认生成任务---使用模版创建tasks.json文件-----others(运行任何外部命令的实例)
自动生成的tasks.json形式如下:
这里的内容含义是指我们指定的任务是让shell输出“Hello",所以我们将其中的内容修改为:
args参数中我们指定想要运行的程序为"1两数之和.cpp"
{
"version": "2.0.0",
"tasks": [
{
"label": "Build with Clang",//这个任务的名字在launch.json最后一项配置
"type": "shell",
"command": "clang++",
"args": [
"-std=c++17",
"-stdlib=libc++",
"1两数之和.cpp",
"-o",
"a.out",
"--debug"
],
"group": {
"kind": "build",
"isDefault": true
}
},
{
"label": "run",
"type":"shell",
"command":"./${workspaceFolderBasename}",
"dependsOn":[
"build"
]
}
]
}
我们进入debug的页面,会出现让我们创建launch.json文件的提示
这里在跳出的选择栏中我们选择C++(GDB/LLDB)
将自动生成的launch.json内容修改为如下的内容:
{
"version": "0.2.0",
"configurations": [
{
"type": "lldb",
"request": "launch",
"name": "Debug",
"program": "${workspaceFolder}/a.out",
"args": [],
"cwd": "${workspaceFolder}",
"preLaunchTask": "Build with Clang"
}
]
}
到这里基本实现了run的功能配置,command+shift+b进行build和run即可
build后我们会看到生成了一个a.out文件,然后launch.json的任务就是根据这个a.out文件进行debug
接着我们command+shift+p,点击C/C++:Edit Configurations(UI)
系统会默认帮助你生成c_cpp_properties.json文件,使用默认即可
到这里就完成了所有配置了,接下来你想要运行和debug某个文件需要做的就只有编码和修改tasks.json文件args里面的参数即可
暂时先写这么多,感觉还有一些细节没有阐释清楚,一般以我的安装教程访问量都不高,导致没什么动力,先写这么多,如果大家觉得这样配置的成功率比较高的话,我再进行教程的完善。