c++11 新特性一览

    下面我们简单的对c++11的特性进行一个整体的了解,这里我只根据自己平时所用的和所了解的,简单介绍其作用,具体的感兴趣的可以搜索一下关键字,问度娘进行进一步的了解。
  1.   long long 类型:新增的数据类型
  2.   列表初始化 : 允许变量用{}初始化,对于stl容器很方便
  3.   nullptr常量:为了统一大家判定指针为空的写法习惯,有些写法在特定情况下会有问题:点击打开链接
  4.   constexpr变量: coonst类型变量
  5.   类型别名声明:using代替typedef
  6.   auto类型指示符:类型推断,很常用
  7.   decltype类型指示符:推断变量的类型以及函数返回值类型
  8.   类内初始化:允许类的非静态变量在定义时直接初始化
  9.   使用auto或 decltype缩写类型:c++11不支持函数的返回类型用auto,但是可以配合decltype实现函数的返回类型后置(c++14已废弃,c++14函数返回类型可以用auto)
  10.  范围for语句 :(for a : b),不能应用于动态分配数组
  11.  定义 vector对象的 vector(向量的向量) :之前我们定义这样的变量是要要个在最后>>之间加上一个空格,现在不用了。
  12.  vector对象的列表初始化
  13. 用大括号包围的值列表赋值
  14. 将 sizeof用于类成员: sizeof的参数,可以不通过对象,直接使用作用域运算符来获取成员的大小。
  15. 标准库 initializer list类:一个初始化容器的模板类
  16. 列表初始化返回值: 例:return {1,2},实际上返回了一个vector
  17. 定义尾置返回类型:用起来很丑陋,c++14已废弃
  18. constexpr函数:给函数赋予编译时计算的能力,类似于#define
  19. 使用= default生成默认构造函数
  20. 委托构造函数:允许构造函数调用另一个构造函数
  21. constexpr构造函数:
  22. aray和 forward list容器
  23. 容器的非成员函数swap
  24. 容器 Insert成员的返回类型 :c++11 insert返回新加元素的迭代器
  25. 容器的 emplace成员:调用插入对象的构造函数,而非insert拷贝插入对象
  26. shrink to fit:调用此函数可以使deque,vector,string退回不需要的空间
  27. string的数值转换函数
  28. lambda表达式
  29. 标准库bind函数
  30. 无序容器: unordrered_map,unordrered_set,unordrered_multiset底层使用hash算法,而不是红黑树(map)
  31. 智能指针:使用引用计数管理自动释放内存,不用手动释放内存
  32. shared_ptr类:智能指针
  33. unique_tr类:智能指针
  34. weak ptr类:智能指针
  35. allocator: construct可使用任意构造函数
  36. 将= default用于拷贝控制成员
  37. 使用= delete阻止拷贝类对象
  38. 用移动类对象代替拷贝类对象:对于进一步提高c++的效率很有用
  39. 右值引用
  40. 标准库move函数…
  41. 移动构造函数和移动赋值…
  42. 移动构造函数通常应该是 except
  43. 移动迭代器
  44. 引用限定成员函数
  45. function类模板:实际上就是函数变量
  46. explicit类型转换运算符
  47. 虚函数的 override指示符:表示函数是继承而来
  48. 通过定义类为final来阻止继承
  49. 虚函数的 override和final指示符:final函数不允许被继承
  50. 声明模板类型形参为友元
  51. 模板类型别名
  52. 模板函数的默认模板参数
  53. 实例化的显式控制
  54. 模板函数与尾置返回类型(c++14废弃)
  55. 用 static cast将左值转换为右值
  56. 标准库 forward函数…
  57. 可变参数模板:这个很有用
  58. sizeof.....运算符:当有多个变量时可用sizeof...运算符
  59. 可变参数模板与转发
  60. 标准库 tuple类模板
  61. 新的 bitset运算
  62. 正则表达式库
  63. 随机数库
  64. 浮点数格式控制…
  65. except异常指示符
  66. except运算符
  67. 内联命名空间
  68. 继承的构造函数与多重继承
  69. 有作用域的enum
  70. 说明类型用于保存enum对象
  71. enum的前置声明
  72. 标准库 mem fn类模板:将类成员函数转换为函数指针
  73. c++11 多线程和并发编程标准库:新的标准库中增加了很多关于多线程和并发编程的类:thread,future模板类,atmoic模板类,condition_variable,packaged_task,lock相关的类等等。详细请看<<C++11新标准的并发和多线程编程深度指南>> ,下载链接: https://pan.baidu.com/s/1epcMwIAz76ftVfLZ4oj4sA 密码: epcx  
  74. 最后介绍一本书,<<c++11新特性解析及应用>>链接: https://pan.baidu.com/s/1BKYtSwH6UapihQ57-5_TGw 密码: w8sw

猜你喜欢

转载自blog.csdn.net/d_guco/article/details/80041583