STL里面都有啥

《STL 源码剖析》 读后感 读了这本书后,对STL的知识有了深入的了解,以前觉得神秘、遥远的STL变得清晰可见!     本书主要以SGI STL为标准讲解,并未标准的STL。     STL主要是以模板为基础,实现了强大的泛型功能,只要传给其满足规则的参数,即可实现对各种自定义类型的操作。     STL主要包括空间配置器、迭代器、序列容器、关联容器、泛型算法、仿函数、配接器等。     阅读详情

容器

STL 包含了序列容器(sequence containers)與關聯容器(associative containers)。 序列容器包含了 vector, deque 和 list。至於關聯容器則有 set,multiset, map 和 multimap。

資料容器 描述
有序/Lists - 有序集
vectorC++提供了內建陣列的替代型態vector,vector 可以如同陣列一樣的存取方式,例如使用下標(Subscript)運算子,並記得自己的長度資訊(size),您也可以使用物件的方式來存取vector(push、pop)。使用vector可以輕易地定義二維可調整型陣列。要使用vector,必須含入vector表頭檔。
listlist容器是一個有序(Ordered)的資料結構(循序容器),其特性主要是實作串列資料結構。具有雙向鏈結作用。
deque
(双端队列)                                                                                    
一个在固定的时间分别往开头或结尾插入或删除的向量,但是它在修改之后缺乏迭代器有效性的保障。
Associative containers - 无序集
set 
multiset跟set具有相同功能,但允許重複的元素。
map 
multimap跟map具有相同功能,但允許重複的鍵值。
hash_set
hash_multiset
hash_map
hash_multimap
分别类似于集合,多集合,映射,或者多重映射。但是,使用哈希表实现。它的键(Keys)没有把排序,但是必须存在一个对键值的哈希函数。这些容器并不是C++标准库的部分,但包含在SGI的STL扩展中,并且包含在公共类库,如在GNU C++类库的__gnu_cxx空间。它们可能在未来包含于C++标准。
其他类型的容器
bitset存储系列位类似的固定大小的布尔向量。实现按位运算,缺乏迭代器,不是序列。
valarray另外像数组一样向量的C,为高速数字设计但以一些简化编程和一般用途的开支做为代价。它有许多功能,可以在理想地符合在向量超级计算机和消费级的标量处理器的SIMD单元里的向量处理器,同时也减轻在标量计算机向量数学规划,甚至在标量计算机中。

[编辑]参见

《STL》— STL 详解 STL学习系列——标准模板库STL介绍 库是一系列程序组件的集合,他们可以在不同的程序中重复使用。C++语言按照传统的习惯,提供了由各种各样的函数组成的库,用于完成诸如输入/输出、数学计算等功能。 1. STL介绍 标准模板库STL是当今每个从事C++编程的人需要掌握的技术,所有很有必要总结下 本文将介绍STL并探讨它的三个主要概念:容器、迭代器、算法。 STL... 阅读详情

相关推荐

《STL》— STL 知识点总结

C++:STL标准入门汇总 http://www.cnblogs.com/shiyangxt/archive/2008/09/11/1289493.html stl 在 acm中的应用总结 http://www.cnblogs.com/shanyr/p/5745807.html C++输入与输出—cout和cin的用法 http://blog.youkuaiyun.com/zhanghaotian2011/a...

69小石头的博客 2148

【C++】STL学习小总结

【C++】STL学习小总结 STL概述 长久以来,软件界一直希望建立一种可重复利用的东西,以及一种得以制造出”可重复运用的东西”的方法,从函数(functions),类别(classes),函数库(function libraries),类别库(class libraries)、各种组件,从模块化设计,到面向对象(object oriented ),为的就是复用性的提升。 复用性必须建立在某种标准之上。但是在许多环境下,就连软件开发最基本的数据结构(data structures) 和算法(algorith

ZYP_997_的博客 4662

STL源码剖析——STL算法stl_algo.h

本文剖析的STL算法的源码,在剖析源码的同时会给出一些例子,这样加深对其理解,方便我们对这些算法的使用。

关注校招求职,微信号:job_campus 4002

理解STL六大部件

STL六大部件简介

加油加油 1230

【STL详解】STL标准模板库入门 | STL版本 | STL六大组件 | STL优点 | 常用STL容器vector、list和map | STL算法函数 | STL使用异常原因分析与总结

本文详细介绍STL标准模板库相关的内容,包括STL版本、STL六大组件、STL优点、常用的STL容器vector、list与map、提升效率的STL算法函数的使用、STL使用异常常见原因分析与总结等,以供大家参考。

dvlinker的技术专栏 2万+

别再被无限debugger卡住了!Chrome DevTools实战绕过技巧(含Hook与文件替换)

本文详细介绍了如何通过Chrome DevTools绕过无限debugger封锁的实战技巧,包括Hook技术与文件替换方法。针对常见的定时器轰炸、循环陷阱和动态注入等反调试手段,提供了高效的解决方案,帮助开发者快速突破调试障碍,提升爬虫和逆向工程效率。

weixin_30326515的博客 243

STL六大组件

一、STL六大组件 STL提供六大组件,它们之间可以相互组合使用。 1、容器(containers) 容器用来存放数据,包括各种数据结构,如vector,list,deque,set,map等。从实现的角度来看,STL容器是一种class template。 2、算法(algorithms) 算法包括各种常用的sort,search,copy,erase, find等等。才实现的角度来看...

qq_33215865的博客 2637

别再为淘宝滑块发愁了!一个Python脚本自动获取x5sec cookie的保姆级教程

本文提供了一套完整的Python自动化解决方案,帮助开发者轻松应对淘宝滑块验证码问题。通过模拟浏览器行为、精准识别滑块缺口位置和生成拟人化移动轨迹,脚本能够自动获取关键的x5sec cookie,显著提升爬虫效率。教程涵盖环境配置、验证机制分析、代码实现及反检测策略,是解决淘宝滑块验证的实用指南。

weixin_30300225的博客 576

STL简介

STL主要包含了容器、迭代器、算法和string四部分。

qq_62687015的博客 962

Visual Studio Git 使用指南

Visual Studio 2022深度集成了Git功能,提供了直观的图形界面管理源代码。本文详细介绍了VS中Git的使用方法:从环境准备、克隆/创建仓库开始,重点讲解了"Git更改"窗口的日常操作,包括查看修改、暂存文件、提交推送等。同时涵盖了分支管理、查看历史、解决冲突等核心功能,以及储藏、重置等高级操作。文章还提供了实用技巧,如提交规范、频繁提交等最佳实践。VS的Git集成覆盖了日常开发需求,图形界面与命令行可互补使用,适合各层次开发者高效管理代码版本。

guigenyi的专栏 1572

JW01二氧化碳传感器实战:5分钟搞定Arduino环境监测系统(附完整代码)

本文详细介绍了如何使用JW01二氧化碳传感器与Arduino快速搭建环境监测系统。通过简单的硬件连接和完整的代码示例,读者可以在5分钟内实现CO2浓度实时监测,并了解数据解析、常见问题解决及进阶应用扩展。JW01传感器的高精度和易用性使其成为创客和嵌入式开发者的理想选择。

kite3的博客 383

常搞混的PLC编程语言ST、STL、SCL到底有啥差别

PLC编程语言ST、SCL、STL核心区别摘要 ST(结构化文本)是IEC标准高级语言,类似Pascal/C;SCL是西门子基于ST的实现,两者语法几乎相同(99%),属于现代主流高级语言。STL是西门子特有的低级汇编式语言,使用助记符指令,执行效率高但可读性差。当前趋势:西门子TIA Portal主推SCL,STL逐渐边缘化。选择建议:新项目优先SCL(开发效率高),维护旧项目可能需用STL,跨品牌项目选标准ST。关键区分:ST/SCL是高级语言,STL是低级指令表语言。

m0_57545130的博客 1369

手把手教你用TLP350驱动IGBT:光耦隔离驱动电路完整设计教程

本文详细介绍了如何使用TLP350光耦隔离驱动电路设计IGBT驱动方案。从TLP350芯片特性分析到驱动电路架构设计,包括信号调理、自举电源和栅极控制网络,再到PCB布局优化和保护电路设计,提供了完整的实战指南。通过实测波形分析和故障排查,帮助工程师快速掌握IGBT驱动电路的设计要点和进阶技巧。

weixin_30566063的博客 828

STL的优点

STL的优点: 1.实现数据结构和算法的分离,使得STL非常通用。 2.STL具有高可重用性,高性能,高移植性,夸平台的优点。 --高可重用性:STL中几乎所有的代码都采用了模板类和模板函数的方式实现,代码重用性高。 --高性能:如map,采用红黑数的变体实现,效率高。 --高移植性:STL模块很容易移植。

vinnyjia的博客 2308

手把手教你用ESP32-S3打造智能聊天机器人-立创实战派

本文将详细介绍如何利用立创ESP32-S3开发板,烧录小智AI程序,快速实现一个功能强大的聊天机器人。

举世誉之而不加劝,举世非之而不加沮,定乎内外之分,辩乎荣辱之境,斯已矣。 9922

QEMU源码全解析 —— virtio(3)

QEMU源码全解析 —— virtio(3)

phmatthaus的专栏 1849

【c++ • STL】初步认识什么是 STL 标准库

本文我们将初步认识 STL,了解 STL 的历史,STL 的不同实现版本,以及 STL 的作用。Q:什么是 STL?STL代表着(Standard Template Library),是一个c++程序库,包含了很多在计算机科学领域中常用的基本数据结构和基本算法。STL由容器、算法、迭代器、函数对象、适配器、内存分配器这 6 部分构成。STL 的组成含义容器各种数据类型,比如vector向量容器 ,list列表容器等算法各种常用算法,比如sort排序,copy复制迭代器。

Ceylan__的博客 2229

【全网首发】2026华为OD双机位C卷 机考真题题库含考点说明以及在线OJ(OD上机考试双机位C卷)

【全网首发】2026华为OD机位C卷 机考真题题库含考点说明以及在线OJ(OD上机考试双机位C卷)

算法大师! 8806

STL是什么(STL简介)

本节主要讲述STL历史、STL 组件、STL 基本结构以及 STL 编程概述。 STL 历史可以追溯到 1972 年 C 语言在 UNIX 计算机上的首次使用。直到 1994 年,STL 才被正式纳入C++标准中。 STL 组件主要包括容器,迭代器、算法和仿函数。STL 基本结构和 STL 组件对应。 STL 主要由迭代器、算法、容器、仿函数、内存配置器和配接器六部分组成,可帮助程序员完成...

积累点滴,保持自我 7692

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

【C++ STL应用与实现】0: 感恩STL——STL, ACM和年轻的我们

本文是一篇洗脑文,鼓吹STL的好处, 回忆作者第一次认识STL,并给出STL的学习路线。

Small Flows 1万+

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

STL详解

C++:STL标准入门汇总 第一部分:  一、STL简介 STL(Standard Template Library,标准模板库)是惠普实验室开发的一系列软件的统称。它是由Alexander Stepanov、Meng Lee和David R Musser在惠普实验室工作时所开发出来的。现在虽说它主要出现在C++中,但在被引入C++之前该技术就已经存在了很长的一段时间。 STL的代码...

weixin_40535588的博客 5519

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

c++ STL总结

STL在算法竞赛等领域有着十分重要的作用,写好了更加能提高我们的得奖概率,接下来展开学习吧。STL是英文首字母组成的,一般称其为标准模板库。C++ 对模板(Template)支持得很好,STL就是借助模板把常用的数据结构及其算法都实现了一遍,并且做到了数据结构和算法的分离。例如,vector 的底层为顺序表(数组),list 的底层为双向链表,deque 的底层为循环队列,set 的底层为红黑树,hash_set 的底层为哈希表。

caoxuan666的博客 1635

STL是什么?如何理解STL?

是C++标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包罗数据结构与算法的软件框架。

weixin_50945234的博客 5112

【C++】— 一篇文章让你认识STL

STL是的简称,中文名是标准模板库,是C++标准库的重要组成部分,它不仅是一个可以复用的组件库,而且还是包罗了数据结构与算法的软件框架。

2301_81290732的博客 1576
上一篇: 个人C++调试问题汇总
下一篇: template的应用
-逗你玩儿-
博客等级 码龄14年 76粉丝 121原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值