Go語言中異常處理painc()和recover()的用法
1、Painc用法是:用於拋出錯誤。Recover()用法是:將Recover()寫在defer中,並且在可能發生panic的地方之前,先調用此defer的東西(讓系統方法域結束時,有代碼要執行。)當程序遇到panic的時候(當然,也可以正常的調用出現的異常情況),系統將跳過后面的代碼,進入defer,如果defer函數中recover(),則返回捕獲到的panic的值。
2、代碼:
package main
import "fmt"
func main() {
fmt.Printf("hello world my name is %s, I'm %d\r\n", "songxingzhu", 26)
defer func() {
if err := recover(); err != nil {
fmt.Println("出了錯:", err)
}
}()
myPainc()
fmt.Printf("這里應該執行不到!")
}
func myPainc() {
var x = 30
var y = 0
//panic("我就是一個大錯誤!")
var c = x / y
fmt.Println(c)
}

3、執行結果:
Atom Runner: main.go hello world my name is songxingzhu, I'm 26 出了錯: runtime error: integer divide by zero Exited with code=0 in 1.667 seconds
