STL库

本文深入探讨了STL库的主要组成部分:容器、迭代器和泛型算法。详细介绍了STL容器如string、array、vector、list、deque、stack、queue和priority_queue,关联式容器如set、map、multiset、multimap、hash_set和hash_map,以及迭代器的使用。此外,还阐述了STL中泛型算法的应用。

STL库主要由三部分组成:容器,迭代器和泛型算法, 由于STL是集面向对象设计,运算符重载,动态绑定,泛型设计等技术,容器里可存储任意类型的数据。

容器包含:string对象(可用来存储字符串) 

     序列化容器:

     array 数组 (固定长度的数组声明,不可动态变化,但是效率高,适用于确定长度的用途)

     vector 可动态增长的数组,当数组满时,会自行申请两倍的长度,连续的地址空间

     list    双链表 使用指针连接,不连续的内存地址空间

     deque 双向开口的连续线性地址空间,即头尾两端都可以进行元素的插入和删除

     stack  栈 ,后进先出

     queue 队列,先进先出

              priority_queue 优先队列

     关联式容器:

     1.set  (1-4 使用红黑树实现,set只有key)

     2.map   (pair(key,value),输出时是有序的)

     3.multiset  (key可重复)

     4.multimap

     5.hash_set(4-8 使用的是哈斯表实现,hash_set只有key)

     6.hash_map  (输出时是无序的)

     7.hash_multiset

     8.hash_multimap

迭代器:迭代器是一种smart-pointer 智能指针 

泛型算法:heap算法,数值算法,set相关算法(并集,交集,差集).....

转载于:https://www.cnblogs.com/hzhida/archive/2012/11/01/2750248.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值