要在使用迭代器遍历vector并删除元素,可以使用以下方法: 使用迭代器遍历vector,并在循环中判断条件后调用erase()方法删除元素。 #include <iostream> #include <vector> int main() { std::vector<int> vec = {1, 2, 3, 4, 5}; for(auto it = vec.begin(); it != vec.end(); ) { if(*it % ...
vector迭代器遍历时erase删除元素 #include<vector>#include<iostream>intmain(){usingnamespacestd;vector<int>vec;vec.push_back(1);vec.push_back(2);// 取消++iterfor(autoiter=vec.begin();iter!=vec.end();){if((*iter)==1){//erase函数会返回下一个元素的迭代器指针iter=vec.erase(iter);}else...
#include <string> #include <list> using namespace std; int _tmain(int argc, _TCHAR* argv) printf("run main"); vector<int> vect ; vect.push_back(1); vect.push_back(2); vect.push_back(3); vect.push_back(4); vect.push_back(5); vector<int>::iterator iter = vect.begin(); ...
vector list map 遍历删除制定元素 防止迭代器失效的实例 方法如下所示: // k_control.cpp : 定义控制台应用程序的入口点。 // #include “stdafx.h” #include “stdio.h” #include#include#include#includeusing namespace std; int _tmain(int argc, _TCHAR* argv[]) { printf(“run main”); vecto...
#include <vector> #include #include <string> #include <list> using namespace std; int _tmain(int argc, _TCHAR* argv[]) { printf(“run main”); vector<int> vect ; vect.push_back(1); vect.push_back(2); vect.push_ba点赞(0...