<分区>
我想从 vector 中删除一个元素。例如:
// object that is in the vector: MyClass obj;
// vector looks as so: vector<MyClass*> pVector;
pVector.remove(obj);
标签 c++
<分区>
我想从 vector 中删除一个元素。例如:
// object that is in the vector: MyClass obj;
// vector looks as so: vector<MyClass*> pVector;
pVector.remove(obj);
最佳答案
这将删除纯粹基于指针的对象。理想情况下,您应该为 MyClass
对象设置比较函数,实际检查这些对象以查看它们是否相同。
pVector.erase(std::remove(pVector.begin(), pVector.end(), obj), pVector.end());
关于C++ 从 vector 中删除对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27306086/