站长资讯网
最全最丰富的资讯网站

golang怎么进行错误处理

Golang通常有三种错误处理方式:错误哨兵(Sentinel Error)、错误类型断言和记录错误调用栈。错误哨兵指的是用特定值的变量作为错误处理分支的判定条件。错误类型用于路由错误处理逻辑,和错误哨兵有异曲同工的作用,由类型系统来提供错误种类的唯一性。错误黑盒指的是不过分关心错误类型,将错误返回给上层;当需要采取行动时,要针对错误的行为进行断言,而非错误类型。

golang怎么进行错误处理

本教程操作环境:windows7系统、GO 1.18版本、Dell G3电脑。

golang没有提供try-catch类似的错误处理机制,在设计层面采用了C语言风格的错误处理,通过函数返回值返回出错的错误信息,具体样例如下:

func ReturnError() (string, error) { 	return "", fmt.Errorf("Test Error") }  func main() { 	val, err := ReturnError() 	if err != nil { 		panic(err) 	} 	fmt.Println(val) }
登录后复制

上面的例子是一个基本的错误处理样例,生产环境中执行的调用栈往往非常复杂,返回的error也各式各样,常常需要根据返回的错误信息确定具体的错误处理逻辑。【

赞(0)
分享到: 更多 (0)
网站地图   沪ICP备18035694号-2    沪公网安备31011702889846号