<分区>
Possible Duplicate:
Difference between erase and remove
假设我有一个容器....以下是什么意思。
c.erase(remove(c.begin(),c.end(),99),c.end());
删除和删除不是一样的吗?上面例子中erase和remove的具体作用是什么?
标签 c++ containers erase
<分区>
Possible Duplicate:
Difference between erase and remove
假设我有一个容器....以下是什么意思。
c.erase(remove(c.begin(),c.end(),99),c.end());
删除和删除不是一样的吗?上面例子中erase和remove的具体作用是什么?
最佳答案
它从容器 c
中删除所有等于 99
的元素。
std::remove
实际上并没有删除任何元素。它将所有感兴趣的元素移动到容器的第二部分,并返回一个指示其中第一部分的迭代器。然后 erase
成员函数采用迭代器范围来实际从容器中删除元素。
参见 erase-remove idiom .
关于c++ - 以下结合了 erase 和 remove 的语法是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13874654/