![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
STL
文章平均质量分 73
foolish-wanwan
喜欢科比
展开
-
C++STL总结详解
用C++刷题很久了,对用到的STL做个总结,方便以后查阅学习。文章目录STL的诞生STL中的容器、算法和迭代器vector容器vector插入数据vector也可以存放自定义的数据类型,嵌套vector存放数据,并用迭代器遍历vector删除元素vector互换容器vector预留空间string容器基本概念构造函数赋值操作string拼接操作string查找和替换string比较string字符存取string插入和删除string子串STL的诞生C++的面向对象和泛型编程思想,目的是复用性的提升。原创 2021-05-05 21:32:55 · 379 阅读 · 0 评论 -
STL中next(),advance(),prev(),next_permutation()函数
文章主要内容next()函数advance()函数prev()函数lower_bound()函数upper_bound()函数next()函数next意为下一个,用来获取一个距离指定迭代器n个元素的迭代器。next()函数的语法格式如下:template <class ForwardIterator> ForwardIterator next (ForwardIterator it, typename iterator_traits<ForwardIterator原创 2021-05-03 12:02:28 · 375 阅读 · 0 评论 -
STL容器使用时机
vector使用场景:比如软件历史操作记录的存储deque使用场景:排队购票系统 vector和deque的比较:1:vector.at()比deque.at()效率高,因为vector的开头是固定的,而deque开始位置不固定2:如果有大量元素释放操作的话,vector花的时间更少,3:deque支持头部的快速插入和快速移除,这是deque的优点list使用场景:公交车乘客的存储,随时可能有乘客下车,支持频繁的不确定位置元素的插入和删除set使用场..原创 2021-03-27 21:21:31 · 89 阅读 · 0 评论 -
C++ STL中的map容器
map/multimap容器的基本概念 1.map容器的基本概念 map的特性是,所有元素都会根据元素的键值自动排序,map所有的元素都是pair,同时拥有键值和实值,pair第一元素被视为键值,第二元素被视为实值,map不允许两个元素有相同的键值。 可以通过map的迭代器改变map的键值吗》答案是不行的,因为map的键值关系到map元素的排列规则,任意改变map原创 2021-03-27 20:47:30 · 86 阅读 · 0 评论 -
C++ STL中的set容器
set/multiset容器的基本概念 1.set容器的基本概念 set的特性是,所有元素都会根据元素的键值自动被排序,set的元素不像map那样可以同时拥有实值和键值,set元素即是键值也是实值。set不允许两个元素有相同的键值。 那可以通过set的迭代器改变set元素的值吗?答案是不行的,因为set元素值就是其键值,关系到set元素的额排序规则,如果任意改变set元素值,会严重破坏s原创 2021-03-27 15:01:12 · 158 阅读 · 0 评论