¿Cómo leer los números separados por espacios de la consola?

Estoy tratando de hacer una tarea simple de leer números separados por espacios desde la consola a unavector<int>, pero no entiendo cómo hacer esto correctamente.

Esto es lo que he hecho hasta ahora:

int n = 0;
vector<int> steps;
while(cin>>n)
{
    steps.push_back(n);
}

Sin embargo, esto requiere que el usuario presione un carácter no válido (comoa) para romper elwhile lazo. No lo quiero.

Tan pronto como el usuario ingrese números como0 2 3 4 5 y presionaEnter Quiero que se rompa el bucle. Intenté usaristream_iterator ycin.getline también, pero no pude hacerlo funcionar.

No sé cuántos elementos ingresará el usuario, por lo tanto, estoy usandovector.

Por favor, sugiera la forma correcta de hacer esto.

Respuestas a la pregunta(5)

Su respuesta a la pregunta