Skip to content

Commit 84591fb

Browse files
authored
第 26 条:iterator 优先于 const_iterator等
第 26 条:iterator 优先于 const_iterator、reverse_iterator 以及 const_reverse_iterator
1 parent aa9583c commit 84591fb

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

Effective-STL读书笔记.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -634,3 +634,11 @@ C++11 中新增了四种关联容器,使用哈希函数组织的,即 unorder
634634
- unordered_set:底层为哈希表,无序,不重复;unordered_multiset:底层为哈希表,无序,可重复
635635

636636
- unordered_map:底层为哈希表,无序,不重复;unordered_multiap:底层为哈希表,无序,可重复
637+
638+
## 第 26 条:iterator 优先于 const_iterator、reverse_iterator 以及 const_reverse_iterator
639+
STL 中的所有标准容器都提供了 4 种迭代器类型。
640+
641+
对容器类 container<T> 而言,iterator 类型的功效相当于 T*,而 const_iterator 则相当于 const T*。对一个 iterator 或者 const_iterator 进行递增则可以移动到容器中的下一个元素,通过这种方式可以从容器的头部一直遍历到尾部。reverse_iterator 与 const_reverse_iterator 同样分别对应于 T*和const T*,所不同的是,对这两个迭代器进行递增的效果是由容器的尾部反向遍历到容器头部。
642+
643+
注意:vector::insert,对于 C++98 中,第一个参数均为 iterator;而对于 C++11中,第一个参数均为 const_iterator。vector::erase 的情况也是这样。
644+

0 commit comments

Comments
 (0)