C++ vector之iterator

  1. #include <IOSTREAM>  
  2. #include <VECTOR>  
  3.   
  4. using namespace std;  
  5.   
  6. int main()  
  7. {  
  8.     cout<<"By:Sayln_wu"<<endl<<endl;  
  9.     //编写10个元素的vector对象。用迭代器把每个元素值改为当前值+2.  
  10.     vector<int> ivec(3,8);  
  11.     cout<<"原值为:"<<endl;  
  12.     int i=0;  
  13.     for (vector<int>::iterator iter=ivec.begin();iter!=ivec.end();iter++)  
  14.     {  
  15.         i++;  
  16.         cout<< *iter <<endl;  
  17.         *iter=(*iter)+i;  
  18.     }  
  19.     //可以放在上面输出,下面是为了使用const_iterator。  
  20.     cout<<"修改后的值为:"<<endl;  
  21.     for(vector<int>::const_iterator citer=ivec.begin();citer!=ivec.end();citer++)  
  22.     {  
  23.         cout<<*citer<<endl;  
  24.     }  
  25.     //求vector中间值  
  26.     vector<int>::iterator min = ivec.begin() +ivec.size()/2;  
  27.     cout<<"中间值为:"<<*min<<endl;  
  28.     return 0;  
  29. }  

截图如下:

在上述代码中用到了两个iterator,一个是iterator,另一个是const_iterator。const_iterator是一个只读的迭代器。

当然还有一个是const iterator ,这个也可以,不过不能指定指定位置。所以很少使用。

*iter 是读取ivec的当前值。    *操作符为解引用操作符。

 

值得一看的还有最下面的求iver的中间值。

vector<int>::iterator min = ivec.begin() +ivec.size()/2;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值