有关迭代器的使用解决方法

有关迭代器的使用
vector<int> vecl;
vector<int>::iterator pv;
for(int i=10;i>0;i--)
{
vecl.push_back(i*3);

}

for(pv=vecl.begin();pv!=vecl.end();pv++) //这里的PV是如何与vecl发生关系的
  //(怎么逐个进行复制得到vecl的数据的  
  //为什么*pv中最后一个数据还有vecl的  
  //最后一个数据(按pv!=vecl.end();来说应该是没有的吧)?
{
cout<<*pv<<endl;

}

------解决方案--------------------
迭代器就类似于一个指针一样的东西。pv=vecl.begin()就是使得pv指向了第一个元素。vecl.end();这个迭代器指向了vector的实际最后元素的下一个位置。
------解决方案--------------------
有时间可以看下迭代器模式的实现,看stl相关部分的源码。