本文目录
1. C++ 11比C++98/03 显著增强
- 本地并行编程: 内存模型、线程、原子操作等支持
- 泛型编程:初始化表达式、auto、declytype、移动语义
- 系统编程:constexpr、POD
- 库的构建:内联命名空间、继承构造函数、右值引用
2. C++ 11 的理念
- 保持语言的稳定性和兼容性
- 更倾向于使用库而不是扩展语言来实现特性
- 更倾向于通用的而不是特殊的手段来实现特性
- 专家新手一概支持
- 增强类型的安全性
- 增强代码执行性能和操作硬件的能力
- 开发能够改变人们思维方式的特性
- 融入编程现实
3. 保持语言的稳定性和兼容性
- C99
- 函数的默认模板参数
- 扩展的friend语法extended friend syntax
- 扩展的整型extended integer types
- 外部模板extern templates
- 类成员的初始化in-class member initializers
- 局部类用作模板参数local classes as template arguments
- long long整形 long long integers
- __cplusplus
- noexcept
- override/final控制Override/final controls
- 静态断言 static_assert
- 类成员的 sizeof sizeof class data members
4. 更倾向于使用库而不是扩展语言来实现特性
- 算法增强
- 容器增强
- 分配算符
- std::array
- std::forward_list
- 无序容器
- std::tuple
- 类型特性Type traits
- std::function, std::bind
- unique_ptr
- shared_ptr
- weak_ptr
- 线程Threads
- 互斥Mutex
- 锁Locks
5. 更倾向于通用的而不是特殊的手段来实现特性
- 继承构造函数
- 移动语义、完美转发、引用折叠
- 委托构造函数
- 显示转换操作符
- 统一的初始化语义和语法,初始化列表,防止收窄
- 非受限联合体
- 用户自定义自变量UDL
- 一般化SFINAE规则
- 内联名字空间
- PODs
- 模版别名
6. 专家新手一概支持
- 右尖括号
- auto
- 基于范围的for循环
- decltype
- 追踪返回类型语法
7. 增强类型的安全性
- 强类型枚举
- unique_ptr
- share_ptr
- 垃圾回收
- 常量表达式
- 原子操作、内存模型
- 复制和再抛出异常
- 并行动态初始化和析构
- 变长模版
- 线程本地的存储
- 快速退出进程
8. 开发能够改变人们思维方式的特性
- 指针空值 nullptr
- 显示默认和删除的函数
- lambdas
9. 融入编程现实
- 对齐支持
- 通用属性
- 原生字符串字面量
- Unicode unicode characters
10.C ++11 的新关键字
- alignas
- alignof decltype
- auto ( 重 新 定 义 )
- static_assert
- using (重新定义)
- noexcept
- export (弃用,不过未来可能留作他用)
- nuliptr
- constexpr
- thread_local