gpt4 book ai didi

go - panic ("error_msg") 和 panic(error.New ("error_msg") 有什么区别?

转载 作者:IT王子 更新时间:2023-10-29 00:38:05 28 4
gpt4 key购买 nike

考虑到我使用的是原始的“errors”go 包。

还有,panic(11) 和 panic("11") 之间的区别?

最佳答案

panic定义为 func panic(v interface{}),调用 panic(anything) 将打印 anything 的字符串表示,然后是堆栈跟踪调用函数。

唯一的区别是,如果你使用 recover ,您将能够访问传递给 panic 的任何内容,对于 example :

func main() {
defer func() {
if err := recover(); err != nil {
if n, ok := err.(int); ok && n == 11 {
fmt.Println("got 11!")
}
}
}()
panic(11)
}

关于go - panic ("error_msg") 和 panic(error.New ("error_msg") 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24531422/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com