以下语法与擦除和删除的组合是什么意思

What does the following syntax with the combination of erase and remove mean?

本文关键字:组合 是什么 意思 删除 语法 擦除      更新时间:2023-10-16

可能的重复项:
擦除和删除之间的区别

假设我有一个容器...下面是什么意思。

c.erase(remove(c.begin(),c.end(),99),c.end());

擦除和删除不是一样吗?上面的例子中擦除和删除的具体功能是什么?

它从容器c中删除所有等于 99 的元素。

std::remove实际上并没有删除任何元素。它将所有感兴趣的元素移动到容器的第二部分,并返回一个迭代器,指示其中的第一个元素。然后,erase成员函数采用迭代器范围来实际从容器中删除元素。

请参阅擦除-删除成语。