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则输出报错信息

最新文章

  1. VC++ 回调函数及使用方法(转)
  2. iOS UIButton单双击处理响应不同的方法
  3. WLAN信道
  4. C# + winserver2008 openfiledialog 写入 textbox1 中的 路径不正确
  5. poj2193
  6. tyvj1018 - 阶乘统计 ——暴力
  7. VC中实现GCC的2个比较常用的位运算函数
  8. 使用console进行性能测试和计算代码运行时间
  9. PL/SQL块loop..各种循环练习
  10. 【转】Java中关于异常处理的十个最佳实践
  11. Linux TCP连接数修改
  12. xx学院学员评优评奖管理系统
  13. 在Mac电脑编译c51程序
  14. Vue 限制input输入 限数字 或 小数点后两位number
  15. Mysql、MongoDB对比和使用场景
  16. 如何完全卸载VS2010(亲自体验过) (转)
  17. 高效使用github
  18. 深入浅出WPF之Binding的使用(一)
  19. 2018.09.23 孙悟空大战鲤鱼精(单调队列优化dp)
  20. python远程执行命令

热门文章

  1. linux文件权限,用户和组
  2. oracle 存储过程 建表插值等
  3. C++ 栈 (链表实现)
  4. html2pdf 中文支持问题
  5. C# HTTP请求GET,POST
  6. C#并口操作
  7. 【读书笔记】 DevOps实践 - 驭DevOps之力强化技术栈并优化IT运行
  8. 简析SynchronousQueue,LinkedBlockingQueue,ArrayBlockingQueue
  9. if __name__ == '__main__'的作用和原理
  10. go cobra