新手必看!彻底搞懂 VS Code 环境下的 CMake C++ 多文件协同开发
第一阶段:准备工作与环境初始化
1. 创建并打开项目
在电脑任意位置新建一个空文件夹(例如 together.cmake)。

打开 VS Code,点击左上角 文件 (File) -> 打开文件夹 (Open Folder),选中刚才新建的文件夹。
2. 利用 CMake 快速初始化骨架 (不要自己手动建文件,让插件帮你代劳):
(1) 唤出命令面板: 按下快捷键 Ctrl + Shift + P。
(2) 启动快速入门: 输入并选择 CMake: Quick Start(快速入门)

(3)依次选择“输入新项目名称”

创建c++项目

创建可执行文件

这个可以空着直接回车到下一步

(4) 强制绑定 MinGW 编译器
点击添加新预设
选择从编译器创建

绑定 MinGW 编译器

随便填写一个预设名称

此时,VS Code 左侧会自动为你生成好 CMakeLists.txt 和一个基础的 main.cpp。

第二阶段:编写代码与配置
编写多文件代码 在左侧资源管理器中,新建你的子函数文件。例如:
add.h (声明函数)
#pragma once
int add(int a, int b);
add.cpp (实现函数)
#include "add.h"
int add(int a, int b) {
return a + b;
}
main.cpp (引入 #include "add.h" 并调用函数)
#include <iostream>
#include "add.h"
using namespace std;
int main() {
int a, b;
cout << "Enter two numbers: ";
cin >> a >> b;
cout << "The sum of " << a << " and " << b << " is " << add(a, b) << endl;
return 0;
}
4. 在 CMakeLists.txt 中注册文件 打开自动生成的 CMakeLists.txt 文件,找到大概在末尾的 add_executable 这一行。 将你新写的所有 .cpp 源文件(注意:不需要写 .h 文件)全部补充进去,用空格隔开。
cmake_minimum_required(VERSION 3.10.0)
project(together.cmake VERSION 0.1.0 LANGUAGES C CXX)
add_executable(together.cmake main.cpp add.cpp)
修改完成后,按 Ctrl + S 保存,CMake 会在后台自动重新配置。
Warning:千万别点错运行按钮!
VS Code 界面右上角的那个默认“播放(运行)”按钮。这个按钮默认是“单文件编译”,它只会把你当前正在看的这一个 .cpp 文件拿去编译,根本不管你写没写 CMakeLists.txt,必然会报链接错误!

正确: 视线移到 VS Code 软件的最底部的状态栏:
先编译: 点击带齿轮图标的 Build (生成) 按钮,等待输出窗口提示成功。
后运行: 点击底部的 ▶️ (播放/运行) 按钮。

第三阶段:CMake终端设置
-
按下快捷键
Ctrl+Shift+P打开命令面板。 -
输入
Open Settings JSON,并在列表中点击选择 “首选项: 打开用户设置 (JSON)” (Preferences: Open User Settings (JSON))。
-
此时会打开一个
settings.json文件。在最后一对大括号{}的内部,把下面这段代码粘贴进去:
"cmake.debugConfig": {
"externalConsole": true
}
(注意:如果前面还有其他配置项,记得在上一行的末尾加一个英文逗号 , 以防报错)
改变前:
{
"c-cpp-compile-run.run-in-external-terminal": true,
"files.hotExit": "off",
"window.restoreWindows": "none",
"editor.mouseWheelZoom": true
}
改变后:
{
"c-cpp-compile-run.run-in-external-terminal": true,
"files.hotExit": "off",
"window.restoreWindows": "none",
"editor.mouseWheelZoom": true,
"cmake.debugConfig": {
"externalConsole": true
}
}
效果:
我们复盘一下核心逻辑:利用 CMake Tools 生成标准骨架 -> 将模块化代码(.cpp)注册到 CMakeLists.txt 的 add_executable 中 -> 规避单文件运行陷阱,通过底部状态栏一键构建与运行。 同时,通过修改 settings.json 找回了经典的外部终端,补全了交互体验。
更多推荐
所有评论(0)