现代C 白皮书
目录
摘要 ...................................... i
现代 C 的文艺复兴 . i
译序 vii
目录 .....ix
1. 前言 ............1
1 年表 2
1.2 概述 ................................4
2. 背景:C 的 1979–2006
1 第一5
2.2 第二个十年 ........
1 语言特性........ 8
2.2.2 标准库组件 0
3 C 的 20062
2.4 其他语言 ..5
3. C 标准委员会
1 标准 19
2 组织 ....................0
3 对设计的影响 24
3.4 提案检查清单 ...............2
4. C 11:感觉像是门新语言 5
4.1 C 11:并发支持 7
1 内存模型38
2 线程和锁.............0
4.1.3 期值(future) 2
4.2 C 11:简化使用 ...............5
1 auto 和 decltype 46
2 范围 for 0
3 移动语义..........1
4 资源管理指针 4
5 统一初始化 6
6 nullptr ................59
7 constexpr 函数 0
4.2.8 用户定义字面量 ...................................................................................................... 62
目录
x
9 原始字符串字面量
0 属性 ..........3
4.2.11 垃圾收集 ................................4
4.3 C 11:改进对泛型编程的支持
1 lambda 表达式 5
2 变参模板69
3 别名 ...0
4.3.4 tuple ...............................2
4 提高静态类型安全
4.5 C 11:支持对库的开发 4
1 实现技巧.....5
2 元编程支持 ........
4.5.3 noexcept 规约 6
4.6 C 11:标准库组件 78
5. C 14:完成 C 11 1
1 数字分隔符
2 变量模板 ...................2
3 函数返回类型推导....
4 泛型 lambda 表达式 ......................3
5.5 constexpr 函数中的局部变量 4
6. 概念 .....................................7
1 概念的早期历史 88
6.2 C 0x 概念 ........0
1 定义2
2 使用
3 概念映射3
4 定义检查4
5 教训 ...................5
6.2.6 哪里出错了? 7
6.3 Concepts TS .......... 99
1 定义检查1
2 使用.....3
3 的定义 ..........4
4 名称引导器 5
6.3.5 概念和类型 ............................................................................................................. 106
在拥挤和变化的世界中茁壮成长:C 2006–2020
xi
6 改进 .........8
7 等效语法.............................................09
6.3.8 为什么在 C 17 中没有概念? 0
4 C 20 概念 2
6.5 概念的命名 4
7. 错误处理 ..
1 背景 ....................5
2 现实中的问题 ...6
3 noexcept 规约 ..19
4 类型系统的支持
7.5 回归基础 ......0
8. C 17:大海迷航 .......................3
1 构造函数模板参数推导 4
2 结构化绑定 ....................................5
3 variant、optional 和 any 28
4 并发 .........0
5 并行 STL .1
6 文件系统 ...............2
7 条件的显式测试 ..............3
8.8 C 17 中未包含的提议
1 网络库 ....4
2 点运算符..........5
3 统一调用语法 6
8.8.4 缺省比较38
9. C 20:方向之争
1 设计原则 ................1
2 我的 C 17 清单 3
9.3 C 20 特性 4
1 模块 5
2 协程 ........................48
3 编译期计算支持 2
4 <=> ..
5 范围 ..............4
6 日期和时区 5
9.3.7 格式化 ...................................................................................................................... 156
目录
xii
9.3.8 跨度 7
4 并发 ..........59
5 次要特性 ..........0
9.6 进行中的工作
1 契约 .........1
9.6.2 静态反射5
10. 2020 年的 C ....................
1 用来做什么? 69
2 C 社区 ......1
3 教育和研究 2
4 工具 ..........4
10.5 编程风格 .............5
1 泛型编程
10.5.2 元编程 6
10.6 编码指南 .............8
1 一般方法 79
10.6.2 静态分析 0
11. 回顾 .....................
1 C 模型 ..........3
2 技术上的成功.....4
3 需要工作的领域 5
4 教训 6
11.5 未来 88
致谢 .......................................................................................................................................................... 191
评论