千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > c++中stl版本有哪些?

c++中stl版本有哪些?

来源:千锋教育
发布人:lxl
时间: 2023-06-06 11:18:00 1686021480

stl版本有哪些

  STL(标准模板库)是 C++ 标准库的一部分,提供了一组强大、高效、通用的数据结构和算法,包括了容器、迭代器、算法、函数对象、适配器等核心元素。C++ 标准库的版本实际上就是 C++ 标准的版本,下面列出了 C++ 标准的版本和对应 STL 的版本:

  C++98/03:

  这是最初的 C++ 标准,它定义了一组最基本的 STL 组件,包括 vector、list、deque、map、set、算法(sort、search、merge 等)等。在这个版本中,STL 还被称为 STLport。

  C++11:

  C++11 引入了一些新的 STL 组件,比如 unordered_map、unordered_set,还增加了对并发的支持。这个版本还引入了一些新的关键词,比如 auto、decltype、nullptr、static_assert 等。

  C++14:

  C++14 中对 STL 进行了一些小修补,例如允许更多的 constexpr 发生在函数内部,以及让 ++ 和 – 运算符的返回类型随一个迭代器的类型而变化。

  C++17:

  C++17 引入了一些新的 STL 组件,如 std::variant、std::optional、std::invoke 等,同时对原有组件也进行了升级。比如,std::vector 和 std::string 可以用以下语句实现容量的查询:

std::cout << "vector capacity: " << std::vector<int>{}.capacity() << '\n';

   C++17 还加入了并行 STL 算法,如 std::for_each_n 和 std::reduce 等算法可以并行执行。

  C++20:

  C++20 引入了一些新的 STL 组件和特性,例如 std::span、std::atomic_view、感知指针、三向比较运算符等,此外它还增大了 int 类型的最小范围,使得容器可以支持超过 4G 的元素。

  总之,STL 是 C++ 标准库中的重要组成部分,随着 C++ 标准的发展,STL 也在不断地被完善和扩展。

tags: stl
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT