在stl中迭代器的类型可以分为以下5大类
- 输出迭代器
struct output_iterator_tag; - 输入迭代器
struct input_iterator_tag; - 前向迭代器
struct forward_iterator_tag; - 双向迭代器
struct bidirectional_iterator_tag; - 随机访问迭代器
struct random_access_iterator_tag;
在stl中往往不同的容器提供的迭代器种类也不同,如vector容器提供的是随机访问迭代器,而list容器提供的是双向迭代器。看如下代码:
void _display_category(random_access_iterator_tag mytag)
{
cout << "random_access_iterator_tag\n"<