STL中的迭代器是指针的泛化,它表示容器中的位置,迭代器是STL容器和STL算法之间的的粘合剂,它给容器提供了强大的迭代和随机访问功能。迭代器通常支持以下操作:
(1) * 返回当前位置的元素
(2) ==, != 比较两个位置
(3) = 给迭代器赋一个新值
迭代器通常分为以下几类:
迭代器类别 | 属性 | 容器 |
---|---|---|
前向迭代器 | ++It, It++,*It, It == It2, It != It2 | std::unordered_set std::unordered_map std::unordered_multiset std::unordered_multimap std::forward_list |
双向迭代器 | --It, It-- | std::set std::map std::multiset std::multimap std::list |
随机访问迭代器 | It[i] It += n, It -= n It +n, It-n n+It It - It2 | std::deque s |