C++ 迭代器运算符 箭头运算符->
- 所有标准库容器都支持迭代器,只有少数几种才支持下标运算
- 迭代器运算符
| 运算符 | 作用 |
|---|---|
| *iter | 返回迭代器iter所指元素的引用 |
| iter -> mem | 解引用iter,并获取元素名为mem的成员 |
++iter| 令iter指示容器的下一个元素
--iter| 令iter指示容器的上一个元素
iter1 == iter2<br>iter1 != iter2|判断两个迭代器是否相等(不相等),<br>如果两个迭代器指示的是同一个元素<br>或者它们是同一个容器的尾后迭代器,则相等;反之,不相等
iter.begin()==iter.end()则容器为空- 和指针类似,也可以通过解引用迭代器来获取它所指示的元素
- 结合解引用和成员访问操作
- 解引用迭代器可以获取到迭代器所指的对象,如果该对象的类型恰好是类,就有希望进一步访问它的成员。
(*it).mem //访问迭代器所指对象的mem属性it -> mem //箭头运算符是把解引用和成员访问两个操作结合在一起
一句话:箭头运算符是把解引用和成员访问两个操作结合在一起,相当于直接访问迭代器所指对象的属性

浙公网安备 33010602011771号