使用vector 的erase 函数来删除指定索引的元素: erase 函数接受一个迭代器,指向要删除的元素。你也可以传递两个迭代器,删除一个范围内的元素。 由于索引不是迭代器,你需要使用 begin() 加上索引值来得到迭代器。vector 的erase 函数会自动处理剩余元素的更新或重新排列: ...
①只删除一个元素: vector<int> num; for(vector<int>::iterator iter=num.begin();iter!=num.end();iter++){ //从vector中删除指定的某一个元素 if(*iter==k){ num.erase(iter); break; } } 1. 2. 3. 4. 5. 6. 7. 8. ②删除指定的多个重复元素:erase函数的返回的是指向被删除元素的下...
for (std::map<CString, std::vector<CString>>::iterator iter=m_mapName.begin();iter!=m_mapName.end();){ std::vector<CString> & vec = iter->second;// 对vec可以进行任意的操作,删除一个元素自然不在话下 }