C++STL迭代器

迭代器

1.迭代器:类中类,通过运算符的重载,用类中类的对象遍历容器

2.迭代器分类:

(1)正向迭代器:iterator(begin(); end();)

(2)反向迭代器:reverse_iterator(rbegin(); rend();)

(3)常正向迭代器:const_iterator(cbegin(); cend();)

(4)常反向迭代器:const_reverse_iterator(crbegin(); crend();)

3.按功能分类:

(1)正向迭代器

(2)双向迭代器

(3)随机访问迭代器

4.迭代器辅助函数

(1)移动:advance(iterator iter,n);

(2)间距:distance(iterator begin(),iterator end());

(3)交换:iter_swap(iterator first,iterator end()-1);

5.流型迭代器

(1)输出流:

ostream_iterator<_Ty> iter(ostream& out);

ostream_iterator<_Ty> iter(ostream& out,char* str);

(2)输入流:

istream_iterator<_Ty> iter;//构造无参对象,是一个错误流

istream_iterator<_Ty> iter(istream& in);

#include <iostream>
#include <vector>
using namespace std;
int main()
{
	vector<int> vecdata = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
	//正向
	vector<int>::iterator iter;
	for (iter = vecdata.begin(); iter != vecdata.end(); iter++)
	{
		cout << *iter << "\t";
	}
	//反向
	vector<i
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值