STL库简述

STL库简述STL简述STL库包含六个大类:容器库算法库迭代器库配置器(allocator)适配器(adaptor)仿函数(函数对象)其中后四个类主要为前两个类服务。其中使用频率最高的就是容器库,迭代器库,算法库。容器库为我们提供了存储数据的数据结构,算法库则是我们操作数据结构的算法,迭代器库作为容器库和算法库的黏合剂。容器库容器库整体分为序列型容器,关联型容器,容器适配器。1.序列型容器主要包括list,vector,deque,set。以vector作为学习实例:S

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

STL简述

STL库包含六个大类:

  • 容器库
  • 算法库
  • 迭代器库
  • 配置器(allocator)
  • 适配器(adaptor)
  • 仿函数(函数对象)

其中后四个类主要为前两个类服务。
其中使用频率最高的就是容器库,迭代器库,算法库。容器库为我们提供了存储数据的数据结构,算法库则是我们操作数据结构的算法,迭代器库作为容器库和算法库的黏合剂。


容器库

容器库整体分为 序列型容器 , 关联型容器 , 容器适配器。

1.序列型容器

主要包括 list,vector,deque, array。
以vector作为学习实例:
STL 容器(一) vector

适配器容器 stack,queue,priority_queue 也属于序列型容器,叫它们适配器容器的原因是这些容器的底层是采用vector,deque等现有容器的功能,如stack和queue的底层是采用deque,而priority_queue则是采用vector。
学习实例:
STL 适配器adapter

2.关联型容器

主要包括 map,unordered_map,set,unordered_set 这些key-value存储结构的容器或者以集合形式存在的容器。
学习实例:
STL 容器(二) set,unordered_set
STL 容器(三) map和unordered_map


算法库

算法库整体包括 algorithm库。
algorithm则包括了我们常用的算法;
学习实例:
STL 算法库algorithm


迭代器库

迭代器库整体包括 iterator 库。
迭代器库作为算法库与容器库之间的黏合剂,起到了非常重要的作用。
学习实例:
STL 迭代器(一) 迭代器操作详解
STL 迭代器(二) 迭代器失效情况分析


适配器(adaptor)

适配器分为 容器适配器 和 函数适配器,功能在于将两个不相同的模块结合到一起。
学习实例:
STL 适配器adapter


配置器(allocator)

配置器的功能在于定义类中内存的分配,正常情况下程序员是不会自定义内存的分类的。
学习实例:
STL 配置器allocator 实现vector类


仿函数(函数对象)

实质上也就是将一个类的使用近似看成函数的使用,也就是在类内部使用 operator()
学习实例:
STL 仿函数(一) bind函数回调
STL仿函数(二) bind1st,bind2nd

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/183310.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • windows7 loader怎么用_Windows命令行

    windows7 loader怎么用_Windows命令行Supportedoperatingsystems:*Windows7Ultimate*Windows7Professional*Windows7HomePremium*Windows7HomeBasic*Windows7Start…

    2022年10月12日
  • Hive数据存储结构「建议收藏」

    Hive数据存储:  Hive没有专门的数据存储格式,也没有为数据建立索引,用户可以自由组织Hive中的表,只需要在创建表的时候告诉Hive数据中的分隔符(列分隔和行分隔),Hive就可以解析数据。  hive的数据都存储在HDFS,我们这地方讲的存储主要只Hive中的数据模型存储。Hive中的数据模型主要由:数据库(Database)、表((table)内部表table、外部

  • 禁用Chrome Frame[通俗易懂]

    禁用Chrome Frame[通俗易懂]2019独角兽企业重金招聘Python工程师标准>>>…

  • java简单的除法运算_Java除法运算的陷阱[通俗易懂]

    java简单的除法运算_Java除法运算的陷阱[通俗易懂]3、求余:和除法差不多。System.out.println(23%4);System.out.println(23%-4);System.out.println(-23%4);System.out.println(23f%4);System.out.println(23d%4);System.out.println(23%4f);System.out.println(23%4d);System….

  • visifire 控件

    visifire 控件引言Silverlight对于图形图像处理方面,从1.0时代起就给予了很强大的支持,所以我们可以在Silverlight中实现非常棒的各种统计图表,然而现在有了一些开源的项目,使得这项工作更加的简单。本文我将介绍一个开源的项目visifire,使用它可以在Silverlight2中实现超酷的图表。简单图表首先我们需要下载Visifire项目Silverlight开发包,在建立完项…

  • 线性代数学习笔记——第十一讲——逆矩阵的计算(利用初等变换求逆矩阵)

    线性代数学习笔记——第十一讲——逆矩阵的计算(利用初等变换求逆矩阵)1.将矩阵A变换为单位矩阵的同时,经过同等变换的单位矩阵将变换为矩阵A的逆矩阵2.逆矩阵的计算示例(行变换)3.逆矩阵的计算示例(列变换)4.利用初等变换求逆矩阵…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号