C++开发入门学习记录


0.准备开发环境

系统:Windows11

使用 文本编辑器:VSCode

使用 扩展

  • C/C++

  • CMake Tools

准备 Git

准备 AI Agent (?)

使用 CMake(Download CMake)

使用Microsoft C++ 生成工具 - Visual Studio

先理解一些概念:

  1. C++ 程序是怎么诞生的?

当你写出源代码(比如main.cpp):计算机不能直接运行它

中间需要:.cpp源文件 -> 编译器 -> .obj目标文件 -> 链接器 -> .exe可执行文件

  1. CMake 的作用:一个帮助你生成“构建规则”的工具。负责生成构建规则,真正执行编译的是MSVC/GCC/Clang等编译器。

问题的产生:构建项目时你需要明确告诉编辑器,哪些文件需要编译、使用什么C++标准、输出叫什么、依赖哪些库、什么操作系统、Debug还是Release… 如果手写这些命令,效率低下

  1. CMakeLists.txt是什么:CMakeLists.txt 就是写给 CMake 的说明书。

举例:

1
2
3
4
5
6
7
8
cmake_minimum_required(VERSION 3.20) # 需要至少3.20版本

project(MyProject) # 定义项目名称:MyProject.exe

add_executable( # 生成一个可执行程序
MyProject # 名称
main.cpp # 源文件
)

实际运行过程:

1
2
3
4
MyProject

├── CMakeLists.txt
└── main.cpp
1
2
# 执行
cmake -B build

CMake读取CMakeLists.txt -> 生成构建文件 -> build目录

1
2
3
4
5
6
7
8
9
MyProject

├── CMakeLists.txt
├── main.cpp
└── build
|
├── Visual Studio工程
├── Makefile
└── 配置文件
1
2
# 执行
cmake --build build

build文件 -> 调用MSVC -> 编译cpp -> 生成exe

参考教程:配置 Microsoft C++ 的 VS Code

.h 是声明:告诉别人这个类能做什么
.cpp 是实现:具体怎么做
#include 是引用别人写好的声明
class 是把数据和函数组织在一起
std::vector 是一组结果std::filesystem 是 C++17 自带的文件系统工具