在c++中标准模板库STL的介绍及使用

   STL主要包括容器、迭代器和算法3大部分。STL中其他的内容如算法等,都是围绕容器和迭代器来实现。常用的容器类包括string类、vector容器、list容器和map容器等.

string类用于字符串的处理,包括常用的字符串操作,如赋值、复制、粘贴、删除字符以及替换字符等 ,使用string类中的成员函数可以直接的替换原来的库函数,而重载的运算符能比库函数更加方便地处理字符串。

string类的简单使用

利用string中的库函数来操作字符串


vector容器是标准模板库的一种,用来存储多种数据结构和算法,其中包括相应的模板和函数,vector只能使用连续的内存空间进行存储,如果随着存储内容的增多而预定的存储空间不足时,需要进行内存空间的再次分配。vector容器用于从后面的插入或删除数据,并且容器中的元素只能存储与连续的存储区间,能够直接的访问任何元素。




list容器为双向链表容器,双向链表由一个个节点组成,每一个节点包含一个前驱指针和后继指针和一个数据域,列表可以实现在任意位置进行元素的插入和删除操作,但不支持随机存取。




map容器的每一个节点包括两个部分,一部分为具体存储的数据,一部分是用于排序的关键字,关键字必须在容器中唯一存在,关键字用自动的排序,与容器的具体内容无关。只要用于一对多的映射,可以实现基于关键字的快速查找,但是容器中不允许出现重复的关键字。




deque容器适合从两端插入数据。


在STL中,迭代器从根本上来说,就是指针的一种,在容器和算法中充当着桥梁的作用,是STL泛型库中最和核心的一个组成部分,每一中容器都需要定义一种对应的迭代器,用来遍历容器中的数据.迭代器一般和对应的容器一起使用,用于处理容器中的元素,还可以自增(自减)运算符指向下一个,或者上一个元素。

迭代器在处理容器中的数据时,一般要通过容器中的begin()函数和end()函数来确定数值的范围。上面的例子用到了迭代器,这里就不举例子了。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值