C ++ ¿Borrar elemento vectorial por valor en lugar de por posición? [duplicar]
Esta pregunta ya tiene una respuesta aquí:
¿Cómo elimino un elemento de un vector stl con un cierto valor? 9 respuestasvector<int> myVector;
y digamos que los valores en el vector son esto (en este orden):
5 9 2 8 0 7
Si quisiera borrar el elemento que contiene el valor de "8", creo que haría esto:
myVector.erase(myVector.begin()+4);
Porque eso borraría el cuarto elemento. Pero, ¿hay alguna forma de borrar un elemento basado en el valor "8"? Me gusta:
myVector.eraseElementWhoseValueIs(8);
¿O simplemente necesito iterar a través de todos los elementos del vector y probar sus valores?