这是编辑过的代码
Run Code Online (Sandbox Code Playgroud)vector<vector<int> > vec; vector<vector<int> >::iterator vit; vector<int>::iterator it; for ( vit = vec.begin(); vit != vec.end(); ++vit) { it = vit->begin(); while(it != vit->end()) { while(it != vit->end()) { if( condition ) { while( condition ) { //going back to certain it //erase an element it = vit->erase(it); } } else ++it; } ++it; } }内在的同时循环回到某一点.链接丢失.擦除元素而不复制迭代器并且在后循环中没有内存泄漏并再次向前移动?