今天小编给大家分享一下C++11常用的特性有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
C++
是一个拥有用户群体相当大的语言,同时也在多个领域使用的语言。从 C++98
的出现到 C++11
的正式定稿经历了长达十年多之久的积累。
C++11
是 C++
的第二个主要版本(前一个是 C++98 而后一个是 C++17,C++14则是C++11的一次小的改进 ),并且是从 C++98
起的最重要更新。它引入了大量更改,标准化了既有实践,并改进了对 C++
程序员可用的抽象。
C++14/17
则是作为对 C++11
的重要补充和优化, C++20
则将这门语言领进了现代化的大门,所有这些新标准中扩充的特性,给 C++
这门语言注入了新的活力。
C++11
是对目前C++
语言的扩展和修正, C++11
不仅包含核心语言的新技能,而且扩展了C++
的标准程序库(STL) ,并入了大部分的C++ Technical Report 1
(TR1) 程序库(数学的特殊函数除外)。
C++11关键新特性:
核心语言功能特性
-
auto 与 decltype
-
预置与弃置的函数
-
final 与 override
-
尾随返回类型
-
右值引用
-
移动构造函数与移动赋值运算符
-
有作用域枚举
-
constexpr 与字面类型
-
列表初始化
-
委托与继承的构造函数
-
花括号或等号初始化器
-
nullptr
-
long long
-
char16_t 与 char32_t
-
类型别名
-
变参数模板
-
推广的(非平凡)联合体
-
推广的 POD (平凡类型与标准布局类型)
-
Unicode 字符串字面量
-
用户定义字面量
-
属性
-
lambda 表达式
-
noexcept 说明符与 noexcept 运算符
-
alignof 与 alignas
-
多线程内存模型
-
线程局部存储
-
GC 接口
-
范围 for (基于 Boost 库)
-
static_assert (基于 Boost 库)
库功能特性
头文件
<typeindex>
<type_traits>
<chrono>
<initializer_list>
<tuple>
<scoped_allocator>
<cstdint>
<cinttypes>
<system_error>
<cuchar>
<array>
<forward_list>
<unordered_set>
<unordered_map>
<random>
<ratio>
<cfenv>
<regex>
<atomic>
<thread>
<mutex>
<future>
<condition_variable>
库功能特性
-
原子操作库
-
emplace() 与其他遍及既存标准库所有部分的右值引用使用
-
std::unique_ptr
-
std::move_iterator
-
std::initializer_list
-
有状态及有作用域分配器
-
std::forward_list
-
chrono 库
-
ratio 库
-
新算法
-
Unicode 转换平台
-
thread library
-
std::exception_ptr
-
std::error_code 与 std::error_condition
-
迭代器改进:
-
std::begin
-
std::end
-
std::next
-
std::prev
-
Unicode 转换函数
以上就是“C++11常用的特性有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注云搜网行业资讯频道。