Está tudo bem usar "ir para" a partir de uma instrução catch

Tudo o que me disseram é que ir para o mal é ficar longe deles, mas acho que eles podem me ajudar aqui (?). Gostaria de fornecer ao usuário uma opção para reiniciar o aplicativo quando uma exceção for detectada e estou tendo problemas para entender o que fazer ...

Meu aplicativo será monitorado por outro processo, mas há algumas exceções nas quais eu quero que o usuário possa decidir o que fazer sem retornar o controle ao processo de chamad

É algo assim "aceitável"? Alguma outra sugestão?

Muito obrigado

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;
}

questionAnswers(6)

yourAnswerToTheQuestion