...
如果num2为5的情况下,main函数能够正常执行,如果num2为0的情况下会报错
程序中出现错误之后程序会被中断,无法继续执行。
加入defer+recover机制之后
Code Block |
---|
package main
import "fmt"
func main() {
test()
fmt.Println("上面的除法操作执行成功。。。")
fmt.Println("正常执行下面的逻辑。。。")
}
func test() {
defer func() {
err:=recover()
if err !=nil{
fmt.Println("错误已经被捕获")
fmt.Println("err是::",err)
}
}()
num1 := 10
num2 := 0
result := num1 / num2
fmt.Println(result)
} |