vector的使用注意事项

Posted wuyepeng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vector的使用注意事项相关的知识,希望对你有一定的参考价值。

示例1:

#include "iostream"  
#include "vector"  
using namespace std;  
   
int main(void)  
{  
    vector<int>array;  
    array.push_back(100);  
    array.push_back(300);  
    array.push_back(300);  
    array.push_back(500);  
    vector<int>::iterator itor;  
    for(itor=array.begin();itor!=array.end();itor++)  
    {  
        if(*itor==300)  
        {  
            itor = array.erase(itor);  
        }  
    }  
    for(itor=array.begin();itor!=array.end();itor++)  
    {  
        cout<<*itor<<" ";  
    }  
    return 0;  
} 

  输出结果为:100 300 500 

为什么不是100 500呢?

原因如下:

vector erase以后,itor已经指向下一个元素了,不应该执行itor++,
否则会跳过下一个元素,即连续两个300时跳过了第二个300. 

 

以上是关于vector的使用注意事项的主要内容,如果未能解决你的问题,请参考以下文章

以下代码片段的时间复杂度是多少?

c#代码片段快速构建代码

对vector元素取地址的注意事项

对vector元素取地址的注意事项

小程序各种功能代码片段整理---持续更新

常用的几个JQuery代码片段