C++核心语言的扩充
C++委员会的主要焦点是在语言核心的发展上。核心语言将被大幅改善的领域包括多线程(或称为“多线程”)支持、泛型编程、统一的初始化,以及性能表现的加强。
在此分成4个区块来讨论核心语言的特色以及变更: 运行期表现强化、建构期表现强化、可用性强化,还有新的功能。某些特色可能会同时属于多个区块,但在此仅于其最具代表性的区块描述该特色。
核心语言的运行期表现强化
- 右值引用和 move 语义
- 泛化的常数表示式
- 对POD定义的修正
核心语言建构期表现的加强
- 外部模板
核心语言使用性的加强
- 初始化列表
- 统一的初始化
- 类型推导
- 以范围为基础的 for 循环
- Lambda函数与表示式另一种的函数语法
- 对象建构的改良
- 显式虚函数重载
- 空指针
- 强类型枚举
- 角括号
- 显式类型转换子
- 模板的别名
- 无限制的unions
核心语言能力的提升
- 变长参数模板
- 新的字符串字面值
- 用户自定义的字面值
- 多任务内存模型
- thread-local的存储期限
- 使用或禁用对象的默认函数
- long long int类型
- 静态assertion
- 允许sizeof运算符作用在类型的数据成员上,无须明确的对象
- 垃圾回收机制