English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
recuperação é usada para retomar o controle do programa de emergência ou erro. Ele interrompe a sequência de terminação e volta ao normal. Chamado de função atrasada. Ele recupera o valor de erro passado pelo panic. Geralmente, ele retornanil,não tem outro efeito.
package main import ( "fmt" ) func main() { fmt.Println(SaveDivide(10, 0)) fmt.Println(SaveDivide(10, 10)) } func SaveDivide(num1, num2 int) int { defer func() { fmt.Println(recover()) }() quociente := num1 / num2 retorna quociente }
saída:
erro de tempo de execução: divisão inteira por zero 0 <nil> 1