Jogue Expressão em uma função Você pode colocar o que você precisa para o bloco try em uma função, como ilustrado abaixo: #include using namespace std; int numerador = 8; int denominador = 0; anular errFn () {if {resposta int = numerador /denominador (denominador = 0!); } else {cout jogar 0; }} Int main () {try {errFn (); } Catch (int e) {cout} return 0; } Note que no bloco catch, desta vez, eu não usei uma instrução if.
Isto porque, se o parâmetro da construção captura é do mesmo tipo que o argumento da expressão lance, em seguida, o catch-construção irá capturar a exceção (vai pegar o que foi acionada). Sob esta condição, não é obrigatório o uso do identificador do parâmetro captura no bloco catch. Bem, também nota que a inicialização do numerador eo denominador estão agora fora do bloco principal (e do bloco de funções) e até no código, de modo que possam ser vistos por qualquer bloco no código. Nós aprendemos que a expressão lance pode ser no bloco try diretamente ou em uma função chamada pelo bloco try.
No entanto, o bloco catch permanece ligado ao bloco try, seja ou não a expressão lance é no bloco try diretamente ou em função chamado pelo bloco try. Nota: Na programação prática, a maioria dos blocos catch basta enviar uma mensagem de erro para o usuário do programa; eles realmente não corrigir o erro. Vamos fazer uma pausa aqui e continuar na próxima parte da série.
Chrys Para chegar a qualquer uma das partes desta série, basta digitar o título correspondente abaixo e meu nome, Chrys, na caixa de pesquisa da página e clique em Procurar (menu utilização se disponível): Noções básicas de Exceções em C ++ Jogando Vários Operandos com exceções C ++ Blocos try-catch do assentamento Especificando exceções às funções em C ++ Classes e Exceções no C ++