[GO]errorr接口的使用
2024-08-27 14:06:26
package main import (
"fmt"
"errors"
) func main() {
erro1 := fmt.Errorf("%s", "this is a nomal erorr")
fmt.Println("error1 = ", erro1)
error2 := errors.New("this is a normal error")
fmt.Println("eror2 = ", error2)
}
这里打印的结果就很简单了,就是打印了两行的this sis a normal error
但是这里需要强调的是error里的New方法,可以看看源码
通过源码我们可以学习到一个规范的接口是怎么写成的
package main import (
"errors"
"fmt"
) func MyDiv(a, b int) (result int, err error) { //这里定义了err为error的接口类型
err = nil
if b == {
err = errors.New("分母不能为0")
}else {
result = a / b
}
return
} func main() {
result, err := MyDiv(, )
if err != nil {
fmt.Println("error = ", err)
}else {
fmt.Println("reuslt = ", result)
}
}
如果b为不为零输结果,如果为0则输出报错信息
最新文章
- VC++ 回调函数及使用方法(转)
- iOS UIButton单双击处理响应不同的方法
- WLAN信道
- C# + winserver2008 openfiledialog 写入 textbox1 中的 路径不正确
- poj2193
- tyvj1018 - 阶乘统计 ——暴力
- VC中实现GCC的2个比较常用的位运算函数
- 使用console进行性能测试和计算代码运行时间
- PL/SQL块loop..各种循环练习
- 【转】Java中关于异常处理的十个最佳实践
- Linux TCP连接数修改
- xx学院学员评优评奖管理系统
- 在Mac电脑编译c51程序
- Vue 限制input输入 限数字 或 小数点后两位number
- Mysql、MongoDB对比和使用场景
- 如何完全卸载VS2010(亲自体验过) (转)
- 高效使用github
- 深入浅出WPF之Binding的使用(一)
- 2018.09.23 孙悟空大战鲤鱼精(单调队列优化dp)
- python远程执行命令
热门文章
- linux文件权限,用户和组
- oracle 存储过程 建表插值等
- C++ 栈 (链表实现)
- html2pdf 中文支持问题
- C# HTTP请求GET,POST
- C#并口操作
- 【读书笔记】 DevOps实践 - 驭DevOps之力强化技术栈并优化IT运行
- 简析SynchronousQueue,LinkedBlockingQueue,ArrayBlockingQueue
- if __name__ == '__main__'的作用和原理
- go cobra