在这本书中“C++简单地说”,就有了下面的示例代码帮助我理解的std ::擦除
std::vector<int> data
...
std::erase(std::remove(data.begin(), data.end(), 42),
data.end());
我认为,“删除”是一个成员函数,这样难道不应该是'data.erase'而不是'std :: erase'? 有没有某种方式的C++编译器可以告诉你想要什么成员调用成员函数,或没有书本省略擦除模板函数的任何文档,或者是错误的例子?
有没有通用的算法'erase'。 – 2009-11-30 19:10:13
...甚至不在''中(请继续尝试)。 –
2009-11-30 19:11:04
是的,我错误地说有一个通用的擦除算法(我记得错了)。但标准库中有一个算法头。其中包括许多通用算法(查找,包含等),它与各种stl容器一起工作。 – lkristjansen 2009-11-30 19:15:06