C++11引入了许多新特性,其中一些主要的特性包括:
- 自动类型推断:使用关键字auto可以让编译器根据变量的初始化表达式推断出其类型。
- Lambda表达式:可以使用lambda表达式来定义匿名函数,方便在需要时直接使用。
- 范围for循环:引入了范围for循环,可以方便地遍历容器中的元素。
- 列表初始化:可以使用花括号来进行列表初始化,更加方便和直观。
- 智能指针:引入了智能指针std::shared_ptr和std::unique_ptr,可以更好地管理动态内存。
- 新的容器和算法:引入了std::array、std::unordered_map等新的容器,以及一些新的算法。
- 多线程支持:引入了std::thread和std::mutex等多线程支持库,方便进行多线程编程。
- 强类型枚举:引入了enum class,可以更好地控制枚举的作用域和类型安全性。
这些新特性显著提升了C++的表达能力和编程体验,使得代码更加简洁、安全和高效。