logo资料库

vector list map 遍历删除制定元素 防止迭代器失效的实例.pdf

第1页 / 共2页
第2页 / 共2页
资料共2页,全文预览结束
vector list map 遍历删除制定元素 下面小编就为大家带来一篇vector list map 遍历删除制定元素 防止迭代器失效的实例。小编觉得挺不错的,现 在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧 遍历删除制定元素 防止迭代器失效的实例 防止迭代器失效的实例 方法如下所示: 方法如下所示: // k_control.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include "stdio.h" #include #include #include #include using namespace std; int _tmain(int argc, _TCHAR* argv[]) { printf("run main"); vector vect ; vect.push_back(1); vect.push_back(2); vect.push_back(3); vect.push_back(4); vect.push_back(5); vector::iterator iter = vect.begin(); for(iter;iter!=vect.end();){ if(*iter == 3){ iter=vect.erase(iter); }else{ iter++; } } map map_local ; map_local[1]="hello_1"; map_local[2]="hello_2"; map_local[3]="hello_3"; map_local[4]="hello_4"; map_local[5]="hello_5"; map::iterator iter_map=map_local.begin(); for(iter_map;iter_map!=map_local.end();){ if(iter_map->first==1){ map_local.erase(iter_map++); 或者 //iter_map=map_local.erase(iter_map); }else{ iter_map++; } } list list_my; list_my.push_back(1); list_my.push_back(2); list_my.push_back(3); list_my.push_back(4); list_my.push_back(5); list::iterator iter_list = list_my.begin(); for(iter_list;iter_list!=list_my.end();){ if(*iter_list==2){ list_my.erase(iter_list++); 或者 //iter_list=list_my.erase(iter_list); }else iter_list++;
} printf("run over"); return 0; } 以上就是小编为大家带来的vector list map 遍历删除制定元素 防止迭代器失效的实例全部内容了,希望大家多多支持我们~
分享到:
收藏