1. 为什么新手装完 VSCode 还是跑不了 C++
很多人第一次在 Windows 上装 VSCode,以为装完就能写 C++ 了,结果新建一个.cpp文件,点运行,弹出来的是一堆看不懂的报错,或者干脆提示g++ 不是内部或外部命令。这不是你操作错了,而是 VSCode 本身只是个编辑器,它不带编译器。真正干活的是 MinGW-w64 里的g++,VSCode 只是负责调用它。
所以完整的链路是这样的:MinGW-w64 提供g++和gdb,把它们的bin目录加进系统 PATH,VSCode 通过.vscode文件夹里的三个 JSON 文件知道去哪找编译器、怎么编译、怎么调试。这三步缺一个,第一个程序就跑不起来。
这篇面向 Windows 新手,把安装 VSCode、下载 MinGW-w64、配置 PATH、写tasks.json/launch.json/c_cpp_properties.json、编译验证整条流程走一遍,配置文件都可以直接复制改路径。最后再补一段:用 TaoToken 的统一 Key 和 API 通道,把 AI 补全插件接进 VSCode,让写 C++ 的时候有代码建议,不用在多个平台之间来回切 Key。
适合谁:刚接触 C++、在 Windows 上第一次配环境、被 PATH 和 JSON 配置卡住的人。跟着做,g++ -v能出版本号,Hello World能跑出结果,就算通了。
2. 前置准备:TaoToken 统一 Key 与 API 通道
在配编译器之前,先把 AI 补全这条线准备好,后面接插件的时候直接用。TaoToken 在这里的作用是:你不需要分别去申请多个模型的 Key,用同一个 Key 走同一个 API 地址,就能在 VSCode 的 AI 插件里调用模型做代码补全和问答。
先拿到 Key。打开官网https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=,注册登录后进控制台,在 API Keys 页面创建一个新 Key,复制出来存好。这个 Key 就是后面插件里要填的凭证。
API 地址用https://taotoken.net/api,注意这个地址不带任何查询参数,插件里填 Base URL 的时候直接写它。如果你用的是支持 Anthropic 协议的插件或工具,走https://taotoken.net/api对应的 ClaudeCodeAnthropic 通道即可,具体在文档里有说明。
注意:Key 只显示一次,创建后立刻复制保存。不要把它写进会提交到 Git 的配置文件里,建议放在插件自己的设置界面或本地环境变量中。
这一步做完,你手里应该有一个可用的 Key 和一个 API 地址。编译器那边还没动,但 AI 补全的通道已经通了,后面配完 C++ 环境直接接上就行。
3. 安装 VSCode 与 MinGW-w64,把 g++ 加进 PATH
3.1 装 VSCode
去 VSCode 官网下载 Windows 版安装包,右键以管理员身份运行。勾选同意协议,下一步;安装位置可以自定义,建议不要放在 C 盘根目录以外太深的地方;继续下一步,到「选择附加任务」这一页,把「添加到 PATH」和「创建桌面快捷方式」都勾上,这两个对后面命令行调用很重要。点安装,完成后启动。
第一次打开是英文界面,点左侧扩展按钮,搜索chinese,安装中文语言包,点 restart 重启,界面就变中文了。
3.2 下载 MinGW-w64
MinGW-w64 是 Windows 上的 GCC 工具链,提供g++、gcc、gdb。去 MinGW-w64 的下载页,找到x86_64-posix-sjlj这个版本下载。下载下来是个压缩包,解压到你打算放工具链的位置,比如D:\mingw64。解压完确认一下D:\mingw64\bin目录下有g++.exe、gcc.exe、gdb.exe这几个文件。
3.3 把 bin 目录加进系统 PATH
右键「此电脑」→「属性」→「高级系统设置」→「环境变量」。在「系统变量」里找到Path,双击,点「新建」,把D:\mingw64\bin粘贴进去,确定、确定、确定,一路关掉。
验证:按Win + R,输入cmd回车,在命令行里敲:
g++ -v如果输出里出现gcc version和版本号,说明 PATH 配好了。如果提示「不是内部或外部命令」,说明路径没加对,回去检查Path里是不是真的写成了D:\mingw64\bin,注意不要写成D:\mingw64\bin\带尾部反斜杠有时候也会出问题,去掉尾部斜杠再试。
4. 可复制配置:tasks.json、launch.json、c_cpp_properties.json
4.1 建工作区和 .vscode 目录
在 VSCode 里点「文件」→「打开文件夹」,新建一个文件夹比如D:\cpp_workspace,选中它打开。在左侧资源管理器里,在这个文件夹下新建一个.vscode文件夹,再在里面新建三个文件:tasks.json、launch.json、c_cpp_properties.json。同时再建一个src文件夹放源码。
4.2 c_cpp_properties.json
这个文件告诉 VSCode 的 IntelliSense 去哪找头文件、用哪个编译器。把compilerPath改成你自己的g++.exe路径,注意 JSON 里反斜杠要写成两个:
{ "configurations": [ { "name": "Win32", "includePath": ["${workspaceFolder}/**"], "defines": ["_DEBUG", "UNICODE", "_UNICODE"], "windowsSdkVersion": "10.0.17763.0", "compilerPath": "D:\\mingw64\\bin\\g++.exe", "cStandard": "c11", "cppStandard": "c++17", "intelliSenseMode": "${default}" } ], "version": 4 }4.3 tasks.json
这个文件定义编译任务。command指向g++.exe,args里-g生成调试信息,-std=c++17指定标准,-o指定输出 exe。options.cwd设成 bin 目录,保证编译时能找到依赖:
{ "version": "2.0.0", "tasks": [ { "type": "shell", "label": "task g++", "command": "D:\\mingw64\\bin\\g++.exe", "args": [ "-g", "${file}", "-o", "${fileDirname}\\${fileBasenameNoExtension}.exe", "-std=c++17" ], "options": { "cwd": "D:\\mingw64\\bin" }, "problemMatcher": ["$gcc"], "group": "build" } ] }4.4 launch.json
这个文件定义调试配置。miDebuggerPath指向gdb.exe,preLaunchTask要和tasks.json里的label一致,都是task g++,这样按 F5 调试时会先编译再启动调试:
{ "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": true, "MIMode": "gdb", "miDebuggerPath": "D:\\mingw64\\bin\\gdb.exe", "setupCommands": [ { "description": "为 gdb 启用整齐打印", "text": "-enable-pretty-printing", "ignoreFailures": true } ], "preLaunchTask": "task g++" } ] }三个文件里的路径都要改成你自己机器上的实际路径,反斜杠写成双反斜杠。改完保存。
5. 验证请求:编译并运行第一个 C++ 程序
在src文件夹下新建demo.cpp,写入:
#include <stdio.h> #include <windows.h> int main() { printf("Hello World\n"); system("pause"); return 0; }保存后,点 VSCode 左侧的「运行和调试」按钮,或者直接按 F5。第一次会弹出选择调试配置,选g++.exe build and debug active file。如果配置正确,会先执行task g++编译,然后弹出外部控制台窗口,显示Hello World,按任意键继续。
如果不想用调试,也可以在终端里手动验证。打开 VSCode 终端,切到源码目录,敲:
g++ -g demo.cpp -o demo.exe -std=c++17 .\demo.exe能输出Hello World就说明g++工具链和 VSCode 配置都通了。
5.1 接入 TaoToken 做 AI 补全
C++ 环境跑通后,在 VSCode 扩展市场搜索支持自定义 API 的 AI 补全插件,安装后在插件设置里填两样东西:API Key 填你在第 2 步创建的 TaoToken Key,Base URL 填https://taotoken.net/api。保存后新建一个.cpp文件,输入#include或者写一个函数名,插件会通过 TaoToken 的通道请求模型返回补全建议。
如果你更习惯在对话里问代码问题,可以直接用模型对话入口,把报错信息贴进去让它帮你分析。长期写 C++ 项目、需要 Agent 辅助改代码的,可以看 Coding Plan,把 Key 和通道配好之后,补全和问答走同一条线,不用来回换。
6. 本篇常见错排查
g++ 不是内部或外部命令:PATH 没生效。关掉所有 cmd 和 VSCode 窗口重新开,或者检查Path里是不是写成了D:\mingw64\bin,不要带尾部反斜杠,也不要写成D:\mingw64(少了 bin)。
tasks.json 报错找不到 g++:command路径写错了,或者反斜杠只写了一个。JSON 里必须用\\。确认D:\mingw64\bin\g++.exe这个文件真实存在。
launch.json 里 preLaunchTask 不匹配:preLaunchTask的值必须和tasks.json里某个 task 的label完全一致,大小写敏感。这里两边都是task g++。
调试时弹不出外部控制台:externalConsole设为true才会弹独立窗口。如果设成false,输出会在 VSCode 内置终端里,system("pause")可能看不到效果。
IntelliSense 报红但能编译:c_cpp_properties.json里的compilerPath没配对,或者includePath没包含工作区。把compilerPath改成实际的g++.exe路径,includePath保留${workspaceFolder}/**。
改了配置不生效:VSCode 有时候会缓存,按Ctrl + Shift + P,输入Reload Window重载一下窗口再试。
排障过程中如果涉及 API 接入的问题,比如插件填了 Key 但请求失败,去 TaoToken 的 API Keys 页面确认 Key 状态,再看接入文档核对 Base URL 和请求格式。模型本身的行为可以用模型对话单独验证,确认是插件配置问题还是通道问题。
配好之后,这套环境可以一直用。后面换项目,只要把.vscode三个文件复制过去,改一下路径就能跑。AI 补全那条线,Key 和 API 地址填一次,插件里就固定了,写 C++ 的时候补全和问答都在同一个窗口里完成。