迭代器(Iterator)模式,又叫做游标(Cursor)模式。GOF给出的定义为:提供一种方法访问一个容器(container)对象中各个元素,而又不需暴露该对象的内部细节。应用场景在java中所有的集合类都实现了Conllection接口,而Conllection接口又继承了Iterable接口...
分类:
其他好文 时间:
2014-05-14 11:54:50
阅读次数:
256
在学习Stl的过程中,经常看到->符号的重载,但一直不太明白。
今天做了一个小测试,来看看如果调用它。 以list的迭代器为例,在 pointer operator->() const { return
&(operator*());}中加入 cout str_list; str_list.push...
分类:
其他好文 时间:
2014-05-14 10:32:52
阅读次数:
221
[QQ群: 189191838,对算法和C++感兴趣可以进来] 直接逼入正题。Standard
Template
Library简称STL。STL可分为容器(containers)、迭代器(iterators)、空间配置器(allocator)、配接器(adaptors)、算法(algorit...
分类:
其他好文 时间:
2014-05-14 03:55:43
阅读次数:
273
Iterator模式定义:
提供一个方法顺序访问一个聚合对象的各个元素,而又不暴露该对象的内部表示。
这个模式在java的类库中已经实现了,在java中所有的集合类都实现了Conllection接口,而Conllection接口又继承了Iterable接口,该接口有一个iterator方法,也就是所以的集合类都可以通过这个iterator方法来转换成Iterator类,用Ite...
分类:
其他好文 时间:
2014-05-13 09:11:43
阅读次数:
288
该文章主要回答三个问题: leveldb 怎么管理因compact带来的文件变化?
当db关闭后重新打开时,如何恢复状态? 如何解决版本销毁文件变化和已经获取过的迭代器的冲突? 每次leveldb后台进行compact时,
会造成sst文件的变化。levedb利用version来管理了这...
分类:
数据库 时间:
2014-05-12 22:04:30
阅读次数:
554
原文第15章 迭代器模式(Iterator Pattern)迭代器模式(Iterator
Pattern)
概述:在面向对象的软件设计中,我们经常会遇到一类集合对象,这类集合对象的内部结构可能有着各种各样的实现,但是归结起来,无非有两点是需要我们去关心的:一是集合内部的数据存储结构,二是遍历集合内部...
分类:
其他好文 时间:
2014-05-12 08:43:27
阅读次数:
310
本文主要分析了模板方法模式、命令模式、责任链模式、策略模式、迭代器模式,介绍它们的定义、优缺点、使用场景,以及实例代码。为了深刻地理解设计模式,最重要的还是动手编写代码。
我参照书中的例程重新构想了一些更加生动、易于理解的例子,希望大家喜欢。
代码可以通过以下链接进行浏览:
http://git.oschina.net/caipeichao/java-design-pattern
这些代码都经过编译运行,保证没有错误。...
分类:
其他好文 时间:
2014-05-11 04:44:19
阅读次数:
289
设计实现一种通用的迭代器,该迭代器用于在某个多维整型数组中,按实际存储顺序逐个遍历指定切片范围内的元素,以便进行任意操作。
1)需要为该迭代器实现四个接口:初始化,获取当前元素在数组中的地址,跳到下一个,遍历是否结束。
2)基于该迭代器,创建一个切片数组的拷贝,只包含指定切片内的元素,保持原有存储顺序不变。...
分类:
其他好文 时间:
2014-05-11 02:08:20
阅读次数:
316
STL实践与分析--泛型算法的结构引言:
正如全部的容器都建立在一致的设计模式上一样,算法也具有共同的设计基础。
算法最主要的性质是须要使用的迭代器种类。全部算法都指定了它的每一个迭代器形參可使用的迭代器类型。比方,假设形參必须为随机訪问迭代器则可提供vector或
deque类型的迭代器,或者.....
分类:
编程语言 时间:
2014-05-09 23:10:44
阅读次数:
510
itertools是python内置的一个迭代器工具模块,提供很多方法,创建各种各样的迭代器。python文档中写着,该模块式python2.3引入的,基本常用的python的解释器都是python2.4之后的。所以,基本不会遇上没有提供支持的情况。下面主要介绍常用的三个:islice():一个迭代...
分类:
其他好文 时间:
2014-05-09 13:07:41
阅读次数:
340