¡Las operaciones de borrado en vectores son raras!
El código de eliminación está escrito incorrectamente:
Eliminar mientras se itera. Para vectores de contenedor continuos, debe escribirse así
for(iter = member.begin(); iter != member .end ();)
{
if(*iter == 2)
{
iter = member.erase( iter)
}
más
{
iter++;
}
}