迭代器之输入和输出迭代器

输入迭代器:只能前向读取的迭代器,支持++,不能--

输出迭代器:只能前向写入的迭代器,支持++,不能--

这两种迭代器最简单,基本只能读取/写入一次

例子:

#include <algorithm>
#include <iostream>
#include <vector>
#include <string>

using namespace std;

template <typename Iter>
void print_range(Iter begin, Iter end)
{
	// 输出
	copy(begin, end,
		ostream_iterator<iterator_traits<Iter>::value_type>(cout, " "));
}

int main()
{
	vector<string> coll;

	// 输入
	copy(istream_iterator<string>(cin), istream_iterator<string>(),
		back_inserter(coll));
	print_range(coll.begin(), coll.end());
	cout << endl;

	sort(coll.begin(), coll.end());

	print_range(coll.begin(), coll.end());
	cout << endl;

	return 0;
}

 

原文地址:https://www.cnblogs.com/xkxjy/p/3672257.html