码迷,mamicode.com
首页 > 其他好文 > 详细

STL——容器(Set & multiset)的迭代器

时间:2020-06-08 00:44:19      阅读:68      评论:0      收藏:0      [点我收藏+]

标签:倒数   div   name   ++操作   mic   iter   turn   color   begin   

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)的迭代器

标签:倒数   div   name   ++操作   mic   iter   turn   color   begin   

原文地址:https://www.cnblogs.com/CooCoChoco/p/13062857.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!