码迷,mamicode.com
首页 >  
搜索关键字:iterator traits    ( 4366个结果
Iterator和Enumeration
iterator的hasNext() 和 next()方法用于enumeration的hasMoreElements() 和 nextElement()iterator it = a.itreator();Enumeration en = new Enumeration(){@Overridepub...
分类:其他好文   时间:2014-05-01 12:59:57    阅读次数:358
arrayList里的快速失败
快速失败是指某个线程在迭代集合类的时候,不允许其他线程修改该集合类的内容,这样迭代器迭代出来的结果就会不准确。比如用iterator迭代collection的时候,iterator就是另外起的一个线程,它去迭代collection,如果此时用collection.remove(obj)这个方法修改了...
分类:其他好文   时间:2014-04-30 01:47:43    阅读次数:600
STL Traits编程技法
traits编程技法大量运用于STL实现中。通过它在一定程度上弥补了C++不是强型别语言的遗憾,增强了C++关于型别认证方面的能力。traits编程技法是利用“内嵌型别”的编程技法和编译器的template参数推导功能实现的。iterator_traits1.对于class type要求其“内嵌型别...
分类:其他好文   时间:2014-04-29 21:32:10    阅读次数:672
STL中的Traits编程技法
最近在看读《STL源码剖析》,看到Traits编程技法这节时,不禁感慨STL源码作者的创新能力。那么什么是Traits编程技法呢?且听我娓娓道来: 我们知道容器的许多操作都是通过迭代器展开的。其中容器类似于数组,迭代器类似于指针。我们用数组来写个例子:1 int arr[5] = {1,2,3...
分类:其他好文   时间:2014-04-29 18:15:15    阅读次数:463
STL 逆向迭代器 reverse_iterator 的逻辑位置与实际位置
对于逆向迭代器,很重要的一点是需要弄清楚逻辑位置和实际位置二者的区别。 下图显示了逆向迭代器的位置和所指的数值: 可以发现,逆向迭代器所指位置(实际位置)和所代表的的数值(逻辑位置或数值)是不同的。C++这么做是有其原因的。导致这个行为的原因是区间的半开性。为了能够制定容器内的所有元素,我们必须运用最后一个元素的下一个位置。但是对于reverse迭代器而言,这个位置位于第一个元素之...
分类:其他好文   时间:2014-04-29 13:14:21    阅读次数:367
[转载]《STL源码剖析》阅读笔记之 迭代器及traits编程技法
本文从三方面总结迭代器 迭代器的思想 迭代器相应型别及traits思想 __type_traits思想一 迭代器思想 迭代器的主要思想源于迭代器模式,其定义如下:提供一种方法,使之能够依序巡防某个聚合物(容器)所含的元素,而又无需暴露该聚合物的内部表达式。可见她的主要作用便是能够降低耦合,提高代码....
分类:其他好文   时间:2014-04-29 09:13:47    阅读次数:378
4366条   上一页 1 ... 435 436 437
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!