如删除vector< int>数组中所有为5的元素,并且vector的size也会相应变化。
#include <opencv.hpp>
#include <stdio.h>
#include <iostream>
#include <vector>
#include <algorithm >
using namespace cv;
using namespace std;
int main(int argc, char* argv[])
{
vector<int> iVec = { 1,2,3,5,4,6,7,5,9 };
vector<int>::iterator it;
for (it = iVec.begin(); it != iVec.end();)
{
if (*it == 5) {
it = iVec.erase(it);
}
else
++it; //指向下一个位置
}
for (int i = 0; i < iVec.size(); i++) {
cout << iVec[i] << endl;
}
return 0;
}