所以我必须编写自己的方法。
我做了以下事情:
vector<float> remove(vector<float>& sortedVector, float input)
{
for (vector<float>::iterator it = sortedVector.begin() ; it != sortedVector.end(); ++it)
{
if(input == *it)
{
sortedVector.erase(it);
}
}
return sortedVector;
}
然而编译器在for循环中断开。我哪里做错了?我需要在从向量中删除用户的给定值后返回修改后的向量。
答案 0 :(得分:0)
为什么要自己动手?你可以这样做:
vector.erase(std::remove(vector.begin(), vector.end(), item_to_delete ), vector.end());