C ++ forma más rápida de borrar o borrar un vector

Tengo un código donde rutinariamente lleno un vector con entre 0 y 5000 elementos. Sé que el máximo nunca supera los 5000. En lugar de inicializar el vector varias veces, me gustaría hacerlo solo una vez

vector<struct> myvector;
myvector.reserve(5000);

Sin embargo, para volver a llenar el vector, primero tengo que borrarlo sin alterar su capacidad. Por eso generalmente llamo myvector.clear ();

Esta es una operación O (n). ¿Hay algo simple que pueda hacer para aumentar el rendimiento de esto o es lo mejor que obtendré?

Respuestas a la pregunta(3)

Su respuesta a la pregunta