迭代器 iterator

一、什么是 iterator?

C++中,iterator也被称为迭代器,其主要作用就是指向并访问容器中的元素,其像指针但不是指针

迭代器 iterator_第1张图片

PS:

  • begin()函数返回一个指向容器第一个元素的迭代器;end()函数返回一个指向容器最后一个元素之后位置的迭代器,它是一个不存在的元素位置。

  • STL中的 begin 和 end 定义的是一个半开放区间**[begin, end)**,end 并不指向容器中的元素,而是指向最后一个元素的后一个位置。

迭代器 iterator_第2张图片

二、迭代器

正向迭代器和反向迭代器

2.1 正向迭代器

iterator begin() end()

#include 
using namespace std;
#include 

int main()
{
	string s1("hello world");

	string::iterator it = s1.begin();// 指向第一个字符
	while (it != s1.end())
	{
		cout << *it << " ";
	}
	cout << endl;
    
	return 0;
}

补充:

迭代器 iterator_第3张图片

2.2 反向迭代器

reverse_iterator rbegin() rend()

int main()
{
	string s1("hello world");

	string::reverse_iterator it = s1.rbegin();// 指向最后一个字符
	while (it != s1.rend())
	{
		cout << *it << " ";
		it++;
	}
	cout << endl;

	return 0;
}

你可能感兴趣的:(C++,c++,开发语言,1024程序员节)