STL基础
文章平均质量分 77
rw-just-go-forward
这个作者很懒,什么都没留下…
展开
-
STL容器之list
list将元素按顺序储存在链表中. 与向量(vector)相比, 它允许快速的插入和删除,但是随机访问却比较慢. list提供如下三种构造函数: list l1; list l2(l1); list l3(b, e);b,e是指定范围的两个迭代器 list提供如下的接口函数,具体实现及函数原型请参阅其他帮助文档 assign() 给list赋值 back() 返回最后一个元素原创 2012-06-25 15:06:31 · 779 阅读 · 0 评论 -
STL容器之vector
Vectors 包含着一系列连续存储的元素,其行为和数组类似。 访问Vector中的任意元素或从末尾添加元素都可以在常量级时间复杂度内完成,而查找特定值的元素所处的位置或是在Vector中插入元素则是线性时间复杂度。 vector定义了五种构造函数分别是: vector v1; vector v2(v1); vector v3(b, e) vector v4(n, i); vecto原创 2012-06-25 10:44:27 · 692 阅读 · 0 评论 -
STL容器之queue和priority_queue
STL的顺序容器还有最后两种,这两种都是适配器,分别是queue和priority_queue,这两种容器用法基本相同,所以就放在一块说了。他俩的构造函数形式与stack完全一样,而且都包含在queue头文件中。 他们提供的操作如下: queue: back() 返回最后一个元素 empty() 如果队列空则返回真 front() 返回第一个元素 pop() 删除第一个元素原创 2012-06-26 15:46:25 · 2785 阅读 · 0 评论 -
一个运用map的文本转换程序
本程序的功能是对文本中需要转换的单词进行转换。 程序需要两个文件,一个文件存放转换单词对照表,另一个文件存放要进行转换的文本。 本程序的文本文件内容如下: trans_word_map.txt 'em them cuz because gratz grateful i I nah no pos supposed sez said tanx thanks wuz was t原创 2012-06-27 11:11:26 · 856 阅读 · 0 评论 -
STL容器之deque
deque是double-ended queue的简称,是一种类似vector的容器,提供随机访问功能,与vector不同的是,deque可以实现在头部和尾部两端插入元素。 deque提供的操作和vector很相似,列出如下: Constructors 创建一个新双向队列 构造函数有如下原型: deque();//无参 deque( size_type size );//构造原创 2012-06-26 14:51:19 · 942 阅读 · 0 评论 -
STL容器之stack
先说明一个概念,适配器(adapter),适配器是标准库中的通用概念,包括容器适配器、迭代器适配器、函数适配器。本质上,适配器是使一事物的行为类似于另一事物的行为的一种机制。 容器适配器让一种已存在的容器类型以一种不同的抽象类型的工作方式实现。 STL提供了三种顺序容器适配器,queue、priority_queue、stack。 每一种适配器都定义了两个构造函数,如下: A a;原创 2012-06-26 07:55:31 · 1094 阅读 · 0 评论 -
STL容器之map
map可以理解为之中关联数组,之所以称为关联是因为map是通过键值来访问,而不是通过元素在数组中的位置来访问。 map的键类型必须满足严格弱排序,解释一下: 1.当键值与自身比较时,一定产生false结果 2.两个键不能相互小于,而且如果 k1 3.如果两个键值相互不小于,则视为相等 map定义的类型: map::key_type;键的类型 map::mapped_type;键所关联原创 2012-06-27 09:17:30 · 1180 阅读 · 0 评论 -
STL容器之set
map中存放的是键值对,而set中存放的只是键的集合,所以set中没有mapped_type类型,value_type也是不pair类型,而是与容器中存放元素的类型相同。 set的操作与大部分map操作相同,但是不支持下标操作。 set提供的操作如下: begin()返回指向第一个元素的迭代器 clear()清除所有元素 count()返回某个值元素的个数 empty()如果集原创 2012-06-27 19:42:21 · 1019 阅读 · 0 评论 -
C++ string类型详解
string是非常强大的类型,很好的封装了字符串的操作,有些时候我们可以把string当做字符的容器,string也支持大多数容器操作,下面就列出string类型所支持的所有操作,本文并不是为了讲解string的用法和应用,而是希望作为string类型的参考文档,每个函数皆在注释后有详细说明,需要用时查阅即可。 string操作如下: 构造函数: string();//空串原创 2012-06-29 08:26:14 · 6452 阅读 · 4 评论