先搞清楚:这门课值不值得你花时间
很多写了几年 C++ 的人,其实一直停留在“带类的 C”阶段,项目里还在用头文件和全局变量硬扛,遇到编译慢、符号冲突就靠各种奇技淫巧打补丁。这门课解决的核心场景,就是带你把旧习惯切换到现代 C++20 的工程范式上,重点不是讲语法糖,而是讲怎么用 Modules 解决大型工程的编译性能瓶颈和符号隔离问题。如果你平时的工作只是写写业务逻辑、调调现成接口,暂时碰不到底层架构和性能优化,那这门课对你来说可能有点超前。但如果你在搞基础架构、音视频引擎、游戏后台或者高频交易系统,需要自己设计模块边界、优化编译链路,那这套内容就是直接对着你的痛点来的。它适合有一定 C++11/14 开发经验、能独立写完一个工程项目的人,纯零基础转行的人不建议直接看,很容易卡在编译环境配置上。
建议怎么看:先抓核心机制,再啃实战代码
资料里的图文和音频是配套的,通勤时可以先听音频建立印象,坐到电脑前再对照图文看代码细节。建议先从开篇词看起,它把现代 C++ 演进的痛点和 C++20 的定位讲得很克制,能帮你建立全局认知。接着直接进入 Modules 部分,这是这套体系课的重头戏。Modules 上篇讲的是模块化问题的历史包袱,帮你理解为什么传统的 #include 机制会成为大型项目的性能瓶颈;中篇讲怎么用模块化解决编译性能和符号隔离,这是核心机制部分,建议逐字看,配合手写几段测试代码体会符号导出的差异。不要一开始就死磕概念,先在本地跑通一个最简单的模块引用,再回头看理论,理解会顺畅很多。
学完能做什么,以及资料怎么配合练习
看完 Modules 的下篇,你应该能独立动手把一个多模块的图像处理服务拆分并跑起来。这就要求你不能光看资料,必须跟着资料包里的实战部分自己敲一遍。具体练习方法是:先在本地配好支持 C++20 Modules 的编译环境,然后跟着图文把多模块服务拆出来,重点体会模块接口和实现分离后,编译时间到底能降多少。遇到编译报错别急着跳过,C++20 的错误提示通常能精确指出是模块导出还是依赖顺序的问题。把这些坑趟过一遍,你才算真正把资料里的知识变成了自己的工程能力,以后面对公司里的老旧 C++ 代码库,也能有理有据地评估改造方案。
进阶编程能力,成为C++高手
课程目录
* 01 开篇词/
* 01 开篇词|为什么掌握现代C++新特性如此重要.html (0.75 MB)
* 01 开篇词|为什么掌握现代C++新特性如此重要.mp3 (11.05 MB)
* 02 第一章:核心语言特性变更/
* 01 01|Modules(上):C++模块化问题的前世今生.html (2.14 MB)
* 01 01|Modules(上):C++模块化问题的前世今生.mp3 (15.07 MB)
* 02 02|Modules(中):解决编译性能和符号隔离的银弹.html (4.51 MB)
* 02 02|Modules(中):解决编译性能和符号隔离的银弹.mp3 (21.49 MB)
* 03 03|Modules(下):实战写个多模块图像处理服务.html (4.02 MB)
* 03 03|Modules(下):实战写个多模块图像处理服务.mp3 (15.64 MB)
* 04 04|Concepts背景:C++泛型编程之殇.html (6.61 MB)
* 04 04|Concepts背景:C++泛型编程之殇.mp3 (17.13 MB)
* 05 05|Concepts:解决模板接口的类型与约束定义难题.html (3.11 MB)
* 05 05|Concepts:解决模板接口的类型与约束定义难题.mp3 (19.34 MB)
* 06 06|Concepts实战:写个向量计算模板库.html (2.53 MB)
* 06 06|Concepts实战:写个向量计算模板库.mp3 (18.38 MB)
* 07 07|Coroutines背景:异步IO的复杂性.html (1.50 MB)
* 07 07|Coroutines背景:异步IO的复杂性.mp3 (11.95 MB)
* 08 08|Coroutines:“零”开销降低异步编程复杂度.html (9.73 MB)
* 08 08|Coroutines:“零”开销降低异步编程复杂度.mp3 (17.06 MB)
* 09 09|Coroutines实战(一):异步文件操作库.html (1.94 MB)
* 09 09|Coroutines实战(一):异步文件操作库.mp3 (12.45 MB)
* 10 10|Coroutines实战(二):异步文件操作库.html (2.00 MB)
* 10 10|Coroutines实战(二):异步文件操作库.mp3 (10.46 MB)
* 03 期中周/
* 01 期中周|扩展现有协程框架,实现高级任务调度.html (0.05 MB)
* 01 期中周|扩展现有协程框架,实现高级任务调度.mp3 (2.41 MB)
* 02 期中周|期中测试题,你做对了么.html (0.70 MB)
* 02 期中周|期中测试题,你做对了么.mp3 (2.41 MB)
* 04 第二章:重要库变更/
* 01 11|Ranges(一):数据序列处理的新工具.html (3.28 MB)
* 01 11|Ranges(一):数据序列处理的新工具.mp3 (11.52 MB)
* 02 12|Ranges(二):用“视图”破除函数式编程之困.html (2.61 MB)
* 02 12|Ranges(二):用“视图”破除函数式编程之困.mp3 (11.94 MB)
* 03 13|Ranges实战:数据序列函数式编程.html (3.50 MB)
* 03 13|Ranges实战:数据序列函数式编程.mp3 (15.76 MB)
* 04 14|Formatting:千呼万唤始出来的新format标准.html (6.44 MB)
* 04 14|Formatting:千呼万唤始出来的新format标准.mp3 (12.02 MB)
* 05 15|Formatting实战:如何构建一个数据流处理实例.html (4.00 MB)
* 05 15|Formatting实战:如何构建一个数据流处理实例.mp3 (10.35 MB)
* 06 16|Bit library(一):如何利用新bit操作库释放编程生产力.html (3.39 MB)
* 06 16|Bit library(一):如何利用新bit操作库释放编程生产力.mp3 (8.00 MB)
* 07 17|Bit library(二):如何利用新bit操作库释放编程生产力.html (1.87 MB)
* 07 17|Bit library(二):如何利用新bit操作库释放编程生产力.mp3 (10.89 MB)
* 08 18|其他重要标准库特性:还有哪些库变更值得关注.html (2.71 MB)
* 08 18|其他重要标准库特性:还有哪些库变更值得关注.mp3 (14.06 MB)
* 09 19|其他重要标准库特性实战:利用日历应用熟悉新特性.html (2.25 MB)
* 09 19|其他重要标准库特性实战:利用日历应用熟悉新特性.mp3 (12.24 MB)
* 05 第三章:现代C++标准演进/
* 01 20|漫游C++23:更好的C++20.html (4.24 MB)
* 01 20|漫游C++23:更好的C++20.mp3 (15.26 MB)
* 02 21|重大变更(一):关于C++26的十大猜想.html (1.64 MB)
* 02 21|重大变更(一):关于C++26的十大猜想.mp3 (12.86 MB)
* 03 22|重大变更(二):关于C++26的十大猜想.html (2.33 MB)
* 03 22|重大变更(二):关于C++26的十大猜想.mp3 (12.77 MB)
* 04 23|未来展望:透过未来标准演进看C++设计哲学.html (6.52 MB)
* 04 23|未来展望:透过未来标准演进看C++设计哲学.mp3 (16.25 MB)
* 06 结束语/
* 01 结束语|这只长颈鹿在我家后院生活得不错.html (2.02 MB)
* 01 结束语|这只长颈鹿在我家后院生活得不错.mp3 (5.57 MB)
* 02 期末测试|来赴一场满分之约!.html (0.65 MB)
* 07 特别加餐/
* 01 加餐|软件工程师在AIGC浪潮下的生存指南.html (5.49 MB)
* 01 加餐|软件工程师在AIGC浪潮下的生存指南.mp3 (16.08 MB)






