English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
복구는 예외 상황이나 오류 상황에서 프로그램에 대한 통제를 다시 얻기 위해 사용됩니다. 그것은 종료 시퀀스를 멈추고 정상적인 실행으로 돌아갑니다. 지연 함수에서 호출됩니다. 그것은 panic 호출을 통해 전달된 오류 값을 검색합니다. 일반적으로, 그것은nil,그 외의 효과는 없습니다.
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()) ()} quotient := num1 / num2 return quotient }
출력:
runtime error: integer divide by zero 0 <nil> 1