现代 C++ 教程:高速上手 C++ 11/14/17/20

    • 序言
      • 1.1 被弃用的特性
      • 1.2 与 C 的兼容性
      • 进一步阅读的参考文献
    • 第 2 章 语言可用性的强化
      • 2.1 常量
        • nullptr
        • constexpr
      • 2.2 变量及其初始化
        • if/switch 变量声明强化
        • 初始化列表
        • 结构化绑定
      • 2.3 类型推导
        • auto
        • decltype
        • 尾返回类型
        • decltype(auto)
      • 2.4 控制流
        • if constexpr
        • 区间 for 迭代
      • 2.5 模板
        • 外部模板
        • 尖括号 “>”
        • 类型别名模板
        • 默认模板参数
        • 变长参数模板
        • 折叠表达式
        • 非类型模板参数推导
      • 2.6 面向对象
        • 委托构造
        • 继承构造
        • override
        • final
        • 显式禁用默认函数
        • 强类型枚举
      • 3.1 lambda 表达式
        • 基础
        • 泛型
      • 3.2 函数对象包装器
        • std::function
        • std::bind 和 std::placeholder
      • 3.3 右值引用
        • 左值、右值的纯右值、将亡值、右值
        • 右值引用和左值引用
        • 移动语义
        • 完美转发
    • 第 4 章 标准库: 容器
      • 4.1 线性容器
        • std::forward_list
      • 4.2 无序容器
        • std::unordered_set
        • std::unordered_map
      • 4.3 元组 std::tuple
        • 基本操作
        • 运行期索引
        • 合并与迭代
      • 5.1 RAII 与引用计数
      • 5.2 std::shared_ptr
      • 5.3 std::unique_ptr
      • 5.4 std::weak_ptr
    • 第 6 章 标准库: 正则表达式
      • 6.1 正则表达式简介
        • 特殊字符
        • 限定符
      • 6.2 std::regex 及其相关
        • std::regex_match
        • std::match_results
      • 7.1 并行基础
      • 7.2 互斥量与临界区
      • 7.3 期物
      • 7.4 条件变量
      • 7.5 原子操作与内存模型
        • 原子操作
        • 一致性模型
        • 内存顺序
    • 第 8 章 文件系统
      • 8.1 文档与链接
      • 8.2 std::filesystem
      • 9.1 新类型
        • long long int
      • 9.2 的修饰和操作
      • 9.3 字面量
        • 原始字符串字面量
        • 自定义字面量
      • 9.4 内存对齐
    • 第 10 章 展望: C++20 简介
      • 10.1 Concept
      • 10.2 Range
      • 10.3 Module
      • 10.4 Coroutine
      • 10.5 事务内存
    • 附录 2:现代 C++ 的最佳实践

    许可