文章目录
本篇总结的是Go中对于错误的处理机制
Go 语言的函数经常使用两个返回值来表示执行是否成功:返回某个值以及 true 表示成功;返回零值(或 nil)和 false 表示失败
而实际上来说,是需要对于第二个参数进行判断的,比如之前的这个场景
func test1() {str1 := "123"num, _ := strconv.Atoi(str1)fmt.Println(num)
}
这里实际上是忽略了对应的错误信息,只是这里确实没有错误,但是如果真的错误的话,此时给出的结果就是一个不符合预期的结果
func test2() {str1 := "abc"num, _ := strconv.Atoi(str1)fmt.Println(num)
}
由此可以看出,这个第二个参数实际上是需要被使用的,而常见的判断错误的方式是
func test3(str1 string) {num1, err1 := strconv.Atoi(str1)if err1 != nil {fmt.Println("error!", err1)os.Exit(2)}fmt.Println(num1)
}
运行结果为