STL实践与分析
--再谈迭代器【下】
三、反向迭代器【续:习题】
//P355 习题11.19
int main()
{
vector iVec;
for (vector::size_type index = 0; index != 10; ++index)
{
iVec.push_back(index);
}...
分类:
编程语言 时间:
2016-05-07 11:15:51
阅读次数:
269
STL实践与分析
--再谈迭代器【中】
二、iostream迭代【续】
3、ostream_iterator对象和ostream_iterator对象的使用
能够使用ostream_iterator对象将一个值序列写入流中,其操作过程与使用迭代器将一组值逐个赋值给容器中的元素同样:
ostream_iterator out_i...
分类:
编程语言 时间:
2016-05-07 11:13:57
阅读次数:
266
STL实践与分析
--初窥算法【下】
一、写容器元素的算法
一些算法写入元素值。在使用这些算法写元素时一定要当心。必须确保算法所写的序列至少足以存储要写入的元素。
1、写入输入序列的元素
写入到输入序列的算法本质上是安全的——仅仅会写入与指定输入范围数量同样的元素。
写入到输入序列的一个简单算法是fill函数:...
分类:
编程语言 时间:
2016-05-07 11:12:47
阅读次数:
155
STL实践与分析
--概述、初窥算法【上】
标准库容器定义的操作很少。并没有给容器加入大量的功能函数。而是选择提供一组算法,这些算法大都不依赖特定的容器类型,是“泛型”的。可作用在不同类型的容器和不同类型的元素上!
所谓泛型算法:一是由于它们实现共同的操作,所以称之为“算法”;而“泛型”指的是它们可以操作在多种容器类型上——不但可作用于ve...
分类:
编程语言 时间:
2016-05-07 11:12:32
阅读次数:
163
STL实践与分析
--再谈迭代器【上】
引言:
另外三种迭代器类型:
1)插入迭代器:这类迭代器与容器绑定在一起,实现在容器中插入元素的功能。
2)iostream迭代器:这类迭代器可以与输入与输出流绑定在一起,用于迭代遍历所关联的IO流。
3)反向迭代器:这类迭代器实现向后遍历,而不是向前遍历,所有的容器都定义了自己的rever...
分类:
编程语言 时间:
2016-05-07 11:12:07
阅读次数:
341
STL实践与分析
--map类型(上)
引:
map是键-值对的集合。
map类型通常能够理解为关联数组:能够通过使用键作为下标来获取一个值,正如内置数组类型一样;而关联的本质在于元素的值与某个特定的键相关联,而并不是通过元素在容器中的位置来获取。
一、map对象的定义
1、定义map对象时,必须分别指明键和值的类型:...
分类:
编程语言 时间:
2016-05-07 11:12:04
阅读次数:
274
STL实践与分析
--set类型
引:
map容器是键-值对的集合,好比人名为键的地址和电话号码。相反的,set容器类型只是单纯的键的集合。当只想知道一个键是否存在时,使用set容器是最合适的。
除了两种例外情况,set容器支持大部分的map操作,包括下面几种:
1)第10.2节列出的所有通用的容器操作。
2)表10.3描述的...
分类:
编程语言 时间:
2016-05-07 11:10:40
阅读次数:
239
STL实践与分析
--map类型(下)
六、查找并读取map中的元素
map容器提供了两个操作:count和find,用于检查某个键是否存在而不会插入该键:
不修改map对象的查询
m.count(k)
返回m中k的出现次数
m.find(k)
如果m...
分类:
编程语言 时间:
2016-05-07 11:10:35
阅读次数:
191
STL 实践与分析
-- 容器的综合应用:文本查询程序
引言:
本章中最重点的实例,因为不需要用到 multiset 与 multimap 的内容,于是将这一小节提到了前面,通过这个实例程序,大师分析问题的智慧,大师的编程风格,大师对程序的控制能力,由此可见一斑。因此,我对这一小节的内容几乎不做修改,或只做很小的更改(因为有些东西不同人有不同的理解),搬出来,以供大家仔细...
分类:
编程语言 时间:
2016-05-07 11:09:31
阅读次数:
234
STL 实践与分析
--multimap 与 multiset
引言:
map 和 set 容器中,一个键只能对应一个实例,而 multiset 和 multimap 类型则允许一个键对应多个实例。
multimap 与 multiset 类型与相应的单元素版本具有相同的头文件定义:分别是map 与 set 头文件。
multimap/mult...
分类:
编程语言 时间:
2016-05-07 11:09:10
阅读次数:
151