¿Está bien usar "ir a" desde una declaración catch

Todo lo que me han dicho es que ir a las cosas es malo y mantenerse alejado de ellas, pero creo que pueden ayudarme aquí (?). Me gustaría proporcionarle al usuario una opción para reiniciar la aplicación cuando se detecta una excepción y tengo algunos problemas para entender qué hacer ...

Mi aplicación será monitoreada por otro proceso, pero hay algunas excepciones en las que quiero que el usuario pueda decidir qué hacer sin devolver el control al proceso de llamada.

¿Es algo como esto "aceptable"? ¿Cualquier otra sugerencia

¡Muchas gracias

int main(){

    initialize:
       try{
        //do things
       }
       catch(...)
       {
          cout<<"Would you like to try initializing again?"<<endl;

          //if yes
            goto initialize;

          //if not
          abort(); //or something...
        }

return 0;
}

Respuestas a la pregunta(6)

Su respuesta a la pregunta