当程序遇到致命错误时,就是停止运行Go通过panic函数来报告致命错误functestError1(){panic(errors.New("thisisaerror"))}代码执行中出现错误比如数组越界index:=4arr:=[]int{1,2,3}_=arr[index]那如何“拦截”运行时发生的错误?recover函数会返回一个interface{}类型的结果,如果程序发生错误,就会返回非n
defer语句用于延迟调用指定的函数比如:funcouterFunc(){deferfmt.Println("defer执行")fmt.Println("第一个被打印")}defer语句最后才会被执行funcprintNumbers(){fori:=0;i<5;i++{deferfunc(){fmt.Println(i)}()}}会打印55555延迟函数执行时i已经=5了funcprintN
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号