作者:winterTTr(转载请注明) 资料来源:《C++ Standard Libarry》
有关iterator的分类和简单操作,就不介绍了,一般的资料都会有的。
这里总写一些我们用的不多的,或者不太熟悉的方面。
- 一些有用的函数
- iterator的适配器
我们可以通过reverse_iterator来讲一个正向的iter转换为逆向的。不过,这里要注意一点,那就是转换后的iter保持的是”物理位置“,而不是”逻辑位置“。
例如:
的结果是:
pos: 5
rpos: 4这是一种特性,而不是bug,这点要很注意!
当然,我们可以通过reverse_iterator本身的base()函数,讲一个反向iterator转换为正向的,不过,注意点相同,保持”物理位置“而非”逻辑位置“
插入适配器:
需要注意一点的时候,我们如果使用copy等标准算法进行插入的时候,在特殊情况下不要忘记预留足够的空间,否则,会造成interator的无效问题。
stream iterator:


本文深入探讨了C++中迭代器的一些不常用但重要的功能,包括如何利用标准库函数调整迭代器的位置、计算迭代器间的距离,以及通过适配器实现迭代器的反转和插入。同时介绍了使用迭代器时应注意的特殊情况。
564

被折叠的 条评论
为什么被折叠?



