比如:vector vecID; 中保存了m个ID,这时要删除第n个ID。
当然,遍历是一个方法;即vector::itertor it = vecID.begin(); 然后++it n次。
更好的方法是:vector::itertor it = vecID.begin() + n; vector的迭代器直接支持这种偏移。
然后用vecID.erase(it)方法 删除该元素。
本文详细介绍了在C++中使用vector容器时如何高效地删除指定位置的元素,通过迭代器直接进行偏移操作,从而避免了传统遍历的效率损失。重点讲解了vector迭代器的偏移特性及erase方法的应用。
比如:vector vecID; 中保存了m个ID,这时要删除第n个ID。
当然,遍历是一个方法;即vector::itertor it = vecID.begin(); 然后++it n次。
更好的方法是:vector::itertor it = vecID.begin() + n; vector的迭代器直接支持这种偏移。
然后用vecID.erase(it)方法 删除该元素。
853

被折叠的 条评论
为什么被折叠?