stl Vecotr中遍历方法

1.通过随机存取方式读取

    vector<int> num;
    num.push_back( 
1 );
    num.push_back( 
2 );
    num.push_back( 
3 );
    
for( vector <int>::size_type i=num.size(); i>0--i ) // 反向遍历array数组
    {
        cout  
<< num[i-1]  << endl;
    } 

注意一点:size_type是一个无符号数,如果通过如下的方式遍历能否行动通呢?

    vector<int> num;
    num.push_back( 
1 );
    num.push_back( 
2 );
    num.push_back( 
3 );
    
for( vector <int>::size_type i=num.size()-1; i>=0--i ) // 反向遍历array数组
    {
        cout  
<< num[i]  << endl;
    } 


结果就出错了。

2。通过iterator 迭代器来遍历

    vector<int> num;
    num.push_back( 
1 );
    num.push_back( 
2 );
    num.push_back( 
3 );
    vector
<int>::iterator vi;

    
for( vi=num.begin();vi!=num.end();vi++// 反向遍历array数组
    {
        cout  
<< *vi << endl;
    } 


原文地址:https://www.cnblogs.com/likwo/p/1683855.html