go 错误处理panic recover

栏目: Go · 发布时间: 6年前

内容简介:当程序遇到致命错误时,就是停止运行Go 通过

当程序遇到致命错误时,就是停止运行

Go 通过 panic 函数来报告致命错误

func testError1()  {
    panic(errors.New("this is a error"))
}

go 错误处理panic recover

代码执行中出现错误

比如数组越界

index := 4
    arr := []int{1,2,3}
    _  = arr[index]

go 错误处理panic recover

那如何“拦截”运行时发生的错误?

recover函数

会返回一个interface{} 类型的结果,如果程序发生错误,就会返回非nil

和defer函数结合使用,就会将错误捕捉到进行处理

func testError()  {
    defer func() {
        if e := recover(); e != nil {
            fmt.Printf("panic : %s\n", e)
        }
    }()
    index := 4
    arr := []int{1,2,3}
    _  = arr[index]
}

go 错误处理panic recover


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

AI极简经济学

AI极简经济学

阿杰伊·阿格拉沃尔、乔舒亚·甘斯、阿维·戈德法布 / 闾佳 / 湖南科技出版社 / 2018-12-1 / 58.00

人工智能正在以不可阻挡的态势席卷全球。无论是iPhone的神经网络引擎、AlphaGo的围棋算法,还是无人驾驶、深度学习……毫无疑问,人工智能正在改写行业形态。如同此前个人电脑、互联网、大数据的风行一般,技术创新又一次极大地改变了我们的工作与生活。 那么,究竟应该如何看待人工智能?在《AI极简经济学》一书中,三位深耕人工智能和决策领域的经济学家给出了清晰的答案。他们以坚实的经济学理论剖析动态,把握......一起来看看 《AI极简经济学》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

随机密码生成器
随机密码生成器

多种字符组合密码