C++中vector容器的三种遍历方式

#include<iostream>
using namespace std;
#include<vector>
#include<algorithm>//标准算法头文件
void myPrint(int val)
{
	cout<<val<<endl;
}
int main()
{
	//创建一个vector容器
	vector<int> v;
	
	//向容器中插入数据
	v.push_back(10);
	v.push_back(20);
	v.push_back(30);
	v.push_back(40);
	v.push_back(50);
	
	//需要通过迭代器遍历访问容器中的元素
	//第一种遍历方式
	vector<int>::iterator itBegin = v.begin();//起始迭代器指向容器中的第一个元素
	vector<int>::iterator itEnd = v.end();//结束迭代器指向容器中最后一个元素的下一个位置
	

	while (itBegin != itEnd) {
		//迭代器就是一个指针 需要解引用才能取出里面的值
		cout << *itBegin << endl;
		itBegin++;
	}
	
	//第二种遍历方式
	for(vector<int>::iterator it = v.begin();it!=v.end();it++){
		cout<<*it<<endl;
	}

	//第三种遍历方式 利用STL中提供的遍历算法 需要先引入头文件<algorithm>
	//三个参数为 起始迭代器 结束迭代器 函数
	//myPrint这个函数是个回调函数
	for_each(v.begin(),v.end(),myPrint);
	return 0;
}