C++11的新特性
1,auto关键字:编译器可以根据初始值自动推导出类型。但是不能用于函数传参以及数组类型的推导。
2,nullptr关键字:nullptr是一种特殊类型的字面值,它可以被转换成任意其它的指针类型;而NULL一般被宏定义为0,在遇到重载时可能会出现问题。
3,智能指针:C++11新增了std::shared_ptr、std::weak_ptr等类型的智能指针,用于解决内存管理的问题。
4,初始化列表:使用初始化列表来对类进行初始化。
5,右值引用:基于右值引用可以实现移动语义和完美转发,消除两个对象交互时不必要的对象拷贝,节省运算存储资源,提高效率。
6,atomic原子操作用于多线程资源互斥操作
7,新增STL容器array以及tuple。