恢复(Recover)用于从紧急情况或错误情况中恢复对程序的控制。它停止终止序列并恢复正常执行。从延迟(defer)函数中调用。它检索通过紧急呼叫传递的错误值。通常,它返回 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
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)