Я осмотрелся, и мне кажется, что консенсусным ответом на эту проблему является этот метод;C++ Удалить элемент из вектора по значению
template <typename T>
void removeByValue(vector<T> & vec, const T & val)
{
vec.erase(std::remove(vec.begin(), vec.end(), val), vec.end());
}
Однако при попытке скомпилировать его, я получаю сообщение об ошибке error C2660: 'remove' : function does not take 3 arguments
. Почему это дает мне эту ошибку?
никаких ошибок на vs2013. – Jichao
Я использую визуальную студию 2013. – Maurdekye
Возможный дубликат [C++ STL remove error] (http://stackoverflow.com/questions/8394393/c-stl-remove-error) –