删除元素的算法

删除元素的算法,第1张

删除元素的算法

从数组中:

10 20 30 20 30 20 10 10 20

当您删除all时

20
,您期望得到:

10 30 30 10 10

但是

std::remove
只要移动项目,就可以使其余值未指定

指向范围的新逻辑端和物理端之间的元素的迭代器仍可取消引用,但是元素本身具有未指定的值

这样就得到:

10 30 30 10 10 xx xx xx xx    ^    pend

这说明了您的结果。

如果您需要删除项目,请致电

vec.erase(pend,vec.end())

在调用remove之前,通常会先调用容器的擦除方法,该方法将擦除未指定的值并减小容器的物理大小以匹配其新的逻辑大小。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/zaji/5615417.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-15
下一篇2022-12-15

发表评论

登录后才能评论

评论列表(0条)

    保存