Skip to content

v0.10.0 继续发展的一个版本!

Latest

Choose a tag to compare

@Charliechen114514 Charliechen114514 released this 08 Aug 12:27
· 1 commit to main since this release

v0.10.0 (2026-08-08)

这一版是 v0.9.0 之后攒下来的全部,中间没出 patch,一条线走到底。主线有五条:卷四的模板编程两个子卷都往前推了一大截(元编程子卷 04–09 完工,cpp17 子卷铺到八篇),卷十接上两场 CppCon 2025 的讲座(微基准会说谎、缓存友好的 C++),起步卷全新填满、compilation 整章重写、外加 vol7 补了 CMake 基础一章,卷八的 TinyML 推到 Stage 2。社区这头 owollz4 把 C 语言系统教程第十二章的答案补了,笔者这边顺手把已有答案做了折叠、习题难度做了调整。

卷四:模板编程两个子卷一起推进(#128 + #130)

这版卷四是最厚的。两个子卷,一个往深走,一个往广铺。

vol3-metaprogramming-cpp20-23:04–09 完工(#128)

v0.9.0 时这个子卷只有 concepts 三连(01–03),这版把剩下的 04–09 全部填上,子卷 01–09 全齐。六篇分别是:TMP 核心技术、编译期字符串、静态反射基础、模板实例化控制、模板与异常安全,最后用 concepts 造一个 mini STL 收尾。配二十个独立示例,CN+EN 同步。

vol2-modern-cpp17:八篇正文就位(#130)

cpp17 这条线的子卷铺到完整八篇:if constexpr、变参模板、完美转发、CTAD、类型安全的 any、指定初始化、ranges 基础与视图、ranges 流水线实战。避开和元编程子卷重叠的 traits/SFINAE/fold 那一块,各讲各的。配三十二个示例,CN+EN。这个 PR 净删了三千行左右,是带着示例重构一起合进来的。

卷十:CppCon 2025 再加两场,顺手补了 optional 英文(#129)

cppcon/2025 目录这版又上两场:

  • 07-microbenchmarks-that-lie(五篇):编译器吃掉你的 benchmark、噪声 vs 偏差、分支预测作弊、延迟吞吐与周期、相关性与纪律。讲的是微基准为什么经常骗人。
  • 08-cache-friendly-cpp(四篇):复杂度不是全部、内存慢 100 倍、数据类型与缓存、写缓存友好的代码。

另外给 v0.9.0 上线的 06-evolution-of-std-optional 补了全套英文(当时只有中文)。现在 2025 目录下共七场讲座。

起步卷全新 + compilation 整章重写 + vol7 CMake 基础(#139)

这版单 PR 最大的一条线,九十八个文件,把工具链入门这条线整个捋了一遍。

  • 起步卷(getting-started)全新填满(六篇 + index):编辑器与编译器、装工具链、第一个程序、多文件与 CMake、VSCode 与 clangd、接下来去哪。v0.9.0 时这个目录还是空的,这版从零写满,CN+EN,配十个示例和九张截图。
  • compilation 十篇整章重写:编译链接总览、复用概念、静态库的创建与使用、动态库(一)、动态库设计、符号可见性、符号缺失与运行时加载、库搜索逻辑、动态库细节、动态库当可执行程序。篇名和原来对齐,内容整章翻新,CN+EN。
  • vol7 ch00-cmake-fundamentals(四篇 + index):CMake 是什么、target 与使用要求、find_package 与 C++ 标准、CMake presets。CN+EN,配十九个 vol7 示例。

卷八:TinyML Stage 2 Dense 层(#127)

TinyML 推理器推到 Stage 2,落了一个 Dense 层(Dense span 视图)。文档三篇:什么是 Dense、权重与形状、Dense 层实现。外加一个 cache 在线 demo。

C 语言系统教程:答案折叠 + 难度调整 + 第十二章补全(#134 + #135 + #140)

  • #135 习题答案折叠化:02A–08B 已有参考答案的二十四出处,全部用 VitePress 内置的 ::: details 容器包起来,默认收起、点击展开。答案正文一字未动,零新代码、零新依赖。
  • #140 习题难度调整(issue #136):按反馈把各章习题难度重新排了一遍,CN+EN 各二十八篇。
  • #134 第十二章预处理参考答案(owollz4 来稿)。

工程改进

  • 代码块字号统一(site/.vitepress/theme/custom.css):代码块的字号收敛到一个 --vp-code-font-size 变量上,代码本体和行号都引用它。之前两处各写一份,一旦只改一处,代码行和行号的行盒高度对不上,行号会逐行累积错位(越往下偏得越远)。顺手用 rem 替掉 VitePress 默认的 0.875em,避免 em 在容器里被二次缩放。
  • #131:.vscode 加进 .gitignore

翻译

跟着主线走:卷四两个子卷(vol3-metaprogramming 04–09、vol2-modern-cpp17 八篇)英文全套上线,卷十两场新讲座和 optional 的英文补齐,起步卷 + compilation + vol7 CMake 基础整条线中英对齐,TinyML Stage 2 三篇同步。

点这里直接访问站点

贡献者

这版没有新面孔,老朋友 owollz4 继续给 C 语言系统教程补答案,这次补了第十二章预处理。从 v0.9.0 的第二章一路补到第十二章,整条 C 教程的答案线算是补齐了。