如何删除vector中的指定元素

2025-04-30 00:02:05
推荐回答(2个)
回答1:

如下vector:

	std::vector a;
a.push_back(1);
a.push_back(2);
a.push_back(3);
a.push_back(4);

如果要删除其中的元素3

方法一:(需要#include

	std::vector::iterator iter=std::find(a.begin(),a.end(),3);
a.erase(iter);

方法二:

a.erase(a.begin()+2);

回答2:

删除vector指定位置的元素,参考如下:

#include

#include

using namespace std;

 

int main(int argc, char** argv)

{

    std::vector vec;

    for(int i=0;i<100;i++)

    {

         vec.push_back(i);

    }

 

    printf("10:%d\n",vec[10]);

    printf("size:%d\n",vec.size());

    printf("**********************************\n");

    std::vector::iterator it = vec.begin()+10;

    vec.erase(it);

 

    printf("10:%d\n",vec[10]);

    printf("size:%d\n",vec.size());

    return 0;

}

 

程序输出如下: