Logo
Section 1 / 3

入门

在本节课中,了解课程和作者的介绍。

导入

入门

在本节课中,了解课程和作者的介绍。

课程简介

本课程既是教程,也是参考手册。它带你学习 C++20,并深入讲解这一激动人心的新标准的细节。其吸引力主要来自 C++20 的四大核心特性:

  • 概念(Concepts) 改变了我们对模板的理解与使用方式。它们为模板参数提供了语义分类,让你能直接在类型系统中表达意图。一旦出错,编译器会给出清晰明确的错误提示。

  • 模块(Modules) 克服了头文件的局限性。它们承诺带来诸多改进:例如,头文件与源文件的分离将变得过时,预处理器也将逐渐退出历史舞台。最终,我们将获得更快的编译速度和更简便的库构建方式。

  • 新的 范围库(ranges library) 支持直接在容器上执行算法,使用管道符号组合算法,并对无限数据流实现惰性计算。

  • 由于 协程(coroutines) 的引入,C++ 中的异步编程正式进入主流。协程是协作任务、事件循环、无限数据流或流水线的基础。

当然,这还远不是全部。以下是更多 C++20 的特性:

  • 自动生成比较运算符
  • 日历与时区库
  • 格式化库
  • 对连续内存块的视图(Views)
  • 改进且可中断的线程
  • 原子智能指针
  • 信号量
  • 同步原语,如门闩(latches)和屏障(barriers)

如何学习本课程?

如果你还不熟悉 C++20,建议从最开始的“快速概览”入手,以建立整体认知。掌握全局后,可以继续学习“概念(Concepts)”部分。每个特性的讲解都是独立完整的,但按顺序从头到尾学习仍是最佳方式。初次阅读时,可跳过“快速概览”章节中未提及的功能。

...
我是 Cippi,C++版的皮皮长袜子:好奇、聪慧,没错,也是一位女性!

作者介绍

自1999年起,我担任软件架构师、团队负责人及讲师。2002年,我在一家科学与计算公司工作期间,为公司内部建立了持续教育机制。自那时起,我一直在开展培训课程。我的首个教程聚焦于专有管理软件,不久后便转向 Python 和 C++ 教学。业余时间,我喜欢撰写关于 C++、Python 和 Haskell 的文章,也常受邀在技术会议上演讲。我每周在英文博客 Modernes Cpp 和德国博客 Grimm-Jaud(由 Heise Developer 主办)上更新内容。

自2016年起,我作为独立讲师,专注于现代 C++ 和 Python 的培训。我已出版多部关于现代 C++ 的书籍,尤其专注于并发编程领域。出于职业追求,我始终致力于探索教授现代 C++ 的最佳方法。

约定