C++ 视频教程学习路径
学习 C++ 最好遵循一个循序渐进的路径,不要急于求成,以下是一个经典且高效的学习路线图:

(图片来源网络,侵删)
C++ 基础入门
这个阶段的目标是掌握 C++ 的核心语法和基本概念,理解它和 C 语言的异同,并学会使用 C++ 的标准库。
核心知识点:
- 环境搭建:安装编译器(如 GCC, Clang)和 IDE(如 VS Code, Visual Studio, CLion)。
- 基本语法:变量、数据类型、常量、运算符。
- 流程控制:
if-else、switch、for循环、while循环。 - 函数:函数的定义、声明、参数传递(值传递、引用传递)、函数重载。
- 数组与字符串:C 风格数组和 C++ 标准库中的
std::string。 - 指针与引用:这是 C++ 的精髓,必须深刻理解,指针的概念、指针运算、指针与函数、引用的概念与应用。
- 结构体、联合体、枚举:自定义数据类型。
- 面向对象编程入门:
class与struct的区别、封装、public/private/protected访问修饰符、构造函数、析构函数。
推荐视频教程:
-
[中文] Bilibili - “黑马程序员” C++ 教程
(图片来源网络,侵删)- 链接: 搜索 “黑马程序员 C++”
- 特点: 非常经典的中文入门教程,内容系统全面,讲解细致,配有大量练习项目,适合零基础小白,打基础非常扎实。
- 适合人群: C++ 零基础初学者。
-
[中文] Bilibili - “翁恺” C++ 语言程序设计
- 链接: 搜索 “翁恺 C++”
- 特点: 浙江大学翁恺教授的课程,是国内高校 C++ 教学的标杆,课程逻辑清晰,讲解深入浅出,能帮助你建立非常扎实的编程思想。
- 适合人群: 希望系统学习,并有一定自学能力的学生或自学者。
-
[英文] freeCodeCamp - "C++ Programming Tutorial"
- 链接: YouTube - C++ Programming Tutorial
- 特点: 英文入门教程,时长超过 10 小时,内容覆盖了从基础到面向对象、STL 容器等核心内容,免费且质量高。
- 适合人群: 希望锻炼英语能力,或偏好英文教学的初学者。
C++ 核心进阶
这个阶段的目标是深入理解 C++ 的高级特性,特别是面向对象编程和泛型编程,并熟练使用 C++ 标准模板库。
核心知识点:

(图片来源网络,侵删)
- 面向对象编程深化:
- 继承与派生(
public/protected/private继承) - 多态:虚函数、虚函数表、纯虚函数、抽象类
- 运算符重载
- 继承与派生(
- 模板:函数模板、类模板,这是泛型编程的基础。
- C++ 标准库:
- STL 容器:
vector,list,deque,map,set,unordered_map等,必须熟练掌握其用法和内部原理(至少要知道vector是连续内存,list是链表)。 - 迭代器:理解其概念,掌握其使用方法,作为容器和算法之间的桥梁。
- 算法:
sort,find,copy,for_each等常用算法。 - 智能指针:
std::unique_ptr,std::shared_ptr,std::weak_ptr,现代 C++ 管理内存的关键。 - 异常处理:
try,catch,throw。 - 输入输出流:
iostream,fstream。
- STL 容器:
推荐视频教程:
-
[中文] Bilibili - “侯捷” C++ 系列课程
- 链接: 搜索 “侯捷 C++”
- 特点: C++ 教学领域的“圣经”,侯捷老师的课程(如《C++ 面向对象高级编程》、《C++ 标准库》)深入底层,讲解透彻,能让你知其然更知其所以然,课程有一定难度,但学完后你的 C++ 内功会非常深厚。
- 适合人群: 学完基础后,希望深入理解 C++ 底层原理和设计思想的进阶学习者。
-
[英文] The Cherno - "C++ Series"
- 链接: YouTube - The Cherno C++
- 特点: YouTube 上最知名的 C++ 教程之一,The Cherno 的系列视频涵盖了从入门到现代 C++ 的方方面面,讲解清晰,代码示例现代,他的 “What is C++?” 和 “C++ Core Guidelines” 系列非常值得一看。
- 适合人群: 所有阶段的 C++ 学习者,特别是希望了解现代 C++ 用法的开发者。
现代 C++ 与项目实践
这个阶段的目标是学习 C++11/14/17/20 的新特性,并通过实际项目来巩固和运用所学知识。
核心知识点:
- 现代 C++ 特性:
auto关键字、范围for循环- Lambda 表达式
- 右值引用与移动语义
nullptr,override,final- 多线程编程 (
<thread>,<mutex>,<atomic>,<future>)
- 项目实践:将理论知识应用到实际开发中。
- 控制台项目:如命令行版贪吃蛇、俄罗斯方块、图书管理系统、简易 HTTP 服务器。
- 图形界面项目:使用 Qt 或 SFML 开发简单的桌面应用或游戏。
- 游戏开发:使用 Unreal Engine 或 Godot (C#为主,但有C++支持)。
- 后端开发:使用 gRPC 或其他框架开发微服务。
推荐视频教程/资源:
-
[英文] Jason Turner - "C++ Weekly"
- 链接: YouTube - C++ Weekly
- 特点: 专注于现代 C++ 最佳实践和代码质量,每个视频都很短小精悍,讲解一个具体的知识点或技巧,是提升代码品味和效率的绝佳资源。
- 适合人群: 已掌握基础,希望写出更高效、更安全 C++ 代码的开发者。
-
[中文/英文] 项目实战视频
- 寻找方式: 在 YouTube 或 Bilibili 直接搜索你想做的项目 + C++,
- "C++ Tetris Tutorial"
- "C++ SFML Game Development"
- "C++ Qt Tutorial for Beginners"
- "C++ gRPC Tutorial"
- 特点: 项目驱动式学习是最高效的学习方式之一,通过模仿和复现,你会对 C++ 的实际应用有更深刻的理解。
- 寻找方式: 在 YouTube 或 Bilibili 直接搜索你想做的项目 + C++,
学习建议与资源
- 动手编码是王道:看再多视频,不亲手写代码、调试错误,都是纸上谈兵,一定要跟着视频敲代码,并尝试修改和扩展。
- 学会使用搜索引擎:遇到问题,先尝试自己解决,Google (使用
cpp关键词)、Stack Overflow、cppreference.com 是你最好的朋友。 - 阅读官方文档:cppreference.com 是 C++ 标准库的“圣经”,内容权威、准确,是查阅语言和库细节的最佳去处。
- 选择一个 IDE 并用熟:推荐 Visual Studio (Windows) 或 VS Code + C++ 插件 (跨平台),一个好的 IDE 能极大提升你的开发效率。
- 不要害怕犯错:编程就是在不断试错中进步的,编译错误、运行时错误都是学习的宝贵机会。
- 新手入门:从 黑马程序员 或 翁恺 的课程开始,打好基础。
- 能力进阶:学习 The Cherno 的系列,并挑战 侯捷 的课程,深入理解底层。
- 保持现代:关注 Jason Turner 的 C++ Weekly,学习最新的 C++ 特性和最佳实践。
- 最终检验:通过做 项目 来整合所有知识。
祝你学习顺利,在 C++ 的世界里找到乐趣!
