这篇文章主要介绍“Go错误处理机制怎么实现”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Go错误处理机制怎么实现”文章能帮助大家解决问题。
packagemainimport( "fmt")// 定义一个 DivideError 结构typeDivideErrorstruct{ divideeint dividerint}// 实现 `error` 接口func(de*DivideError)Error()string{ strFormat:=` Cannot proceed, the divider is zero. dividee: %d divider: 0` returnfmt.Sprintf(strFormat,de.dividee)}// 定义 `int` 类型除法运算的函数funcDivide(varDivideeint,varDividerint)(resultint,errorMsgstring){ ifvarDivider==0{ dData:=DivideError{ dividee:varDividee, divider:varDivider, } errorMsg=dData.Error() return }else{ returnvarDividee/varDivider,"" }}funcmain(){ // 正常情况 ifresult,errorMsg:=Divide(100,10);errorMsg==""{ fmt.Println("100/10 = ",result) } // 当除数为零的时候会返回错误信息 if_,errorMsg:=Divide(100,0);errorMsg!=""{ fmt.Println("errorMsg is: ",errorMsg) }}
执行以上程序,输出结果为:
100/10=10errorMsgis:Cannotproceed,thedivideriszero.dividee:100divider:0
关于“Go错误处理机制怎么实现”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注恰卡编程网行业资讯频道,小编每天都会为大家更新不同的知识点。
go如何实现职责链模式
Go Callvis如何使用
go pprof如何使用
Go框架三件套Gorm、Kitex、Hertz怎么使用
Go语言单元测试和基准测试实例代码分析
go Realize怎么使用
goRealize怎么使用本文小编为大家详细介绍“goReal...
14天学会Go语言第四天:Array Map Slice 数组 和切片
如何从 PHP 过渡到 Golang?
我是PHP开发者,转Go两个月了吧,记录一下使用Golang怎么一步步开发新项目。本着有坑填坑,有错改错的宗...
零经验Go语言MVC框架,并推荐PHP函数库和MySQL表自动转struct
最近搭建k8s系统,为了调试自动部署用Go做了个MVC框架,这是个适用于喜欢Go语言练习的框架,零Go语言经验学习Go;配合Go模...
从php到Golang系统的演变
用户名
密码
记住登录状态 忘记密码?
邮箱
确认密码
我已阅读并同意 用户协议