STL——容器(Set & multiset)的迭代器
Posted coocochoco
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了STL——容器(Set & multiset)的迭代器相关的知识,希望对你有一定的参考价值。
1.set.insert(elem); //在容器中插入元素。
2.set.begin(); //返回容器中第一个数据的迭代器。
3.set.end(); //返回容器中最后一个数据之后的迭代器。
4.set.rbegin(); //返回容器中倒数第一个元素的迭代器。
5.set.rend(); //返回容器中倒数最后一个元素的后面的迭代器。
使用方法如下:
1 #include <iostream> 2 #include <set> 3 4 using namespace std; 5 6 int main() 7 { 8 set<int> setInt; 9 10 //在容器中插入元素 11 setInt.insert(1); 12 setInt.insert(2); 13 setInt.insert(3); 14 setInt.insert(4); 15 setInt.insert(5); 16 17 //返回容器中第一个数据的迭代器赋值给 it,如果不等于最后一个数据的迭代器便 it++ 18 for (set<int>::iterator it = setInt.begin(); it != setInt.end(); it++) 19 { 20 cout << *it << endl; 21 } 22 23 cout << endl; 24 25 //返回容器中倒数第一个元素的迭代器赋值给 it,如果不等于倒数最后一个数据的迭代器便 it++ 26 //这里需要注意一点,rbegin 的返回类型应该为 reverse_iterator ,并且 reverse_iterator 的++操作将会是往前移动的操作 27 for (set<int>::reverse_iterator it = setInt.rbegin(); it != setInt.rend(); it++) 28 { 29 cout << *it << endl; 30 } 31 32 return 0; 33 }
打印结果:
这里需要注意 rbegin 的返回值类型为 reverse_iterator
1 _NODISCARD reverse_iterator rbegin() noexcept 2 { 3 return reverse_iterator(end()); 4 }
========================================================================================================================================
以上是关于STL——容器(Set & multiset)的迭代器的主要内容,如果未能解决你的问题,请参考以下文章