首页 > 其他分享 >Golang错误处理

Golang错误处理

时间:2023-02-21 11:11:46浏览次数:55  
标签:errors 错误 创建 fmt Golang 错误处理

Golang 中创建错误有两种方式:
第一种: errors.New() 函数,其返回值类型为 *errors.errorString

第二种: fmt.Errorf() 函数
当使用 fmt.Errorf() 来创建错误时,核心有以下两点:

错误描述中不包含 %w 时,p.wrappedErrnil,所以底层也是调用 errors.New() 创建错误。因此错误类型就是 *errors.errorString

错误描述中包含 %w 时,p.wrappedErr 不为 nil,所以底层实例化 wrapError 结构体指针。 因此错误类型是 *fmt.wrapError,可以理解为包裹错误类型。

————————————————
原文作者:相守之路
转自链接:https://learnku.com/articles/44328
版权声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请保留以上作者信息和原文链接。

Reference

标签:errors,错误,创建,fmt,Golang,错误处理
From: https://www.cnblogs.com/G-H-Y/p/17140208.html

相关文章

  • GoLang环境搭建
    goLangIDE选择VsCodeSDK下载首页-Go语言中文网-Golang中文社区(studygolang.com)  选择64位压缩包   下载后解压到磁盘目录 新建目录 C:\gol......
  • Golang基础-闭包
    funcfib()func()int{ varn1,n2int returnfunc()int{ ifn1==0&&n2==0{ n1=1 }else{ n1,n2=n2,n1+n2 } returnn2 }}next......
  • 通过golang编写并发程序监控系统中文件大小并通过prometheus告警
    packagemainimport("fmt""io/ioutil""os""path/filepath""sync")const(maxFileSizeint64=10*1024*1024m......
  • golang中的GPM(用户态的线程池)
     全局队列(GlobalQueue):存放等待运行的G。P的本地队列:同全局队列类似,存放的也是等待运行的G,存的数量有限,不超过256个。新建G’时,G’优先加入到P的本地队列,如果......
  • Golang基础-正则表达式
    backticksWhenusingbackticks(`)tomakestrings(Rawstringliterals),backslashes(\)don'thaveanyspecialmeaninganddon'tmarkthebeginningofspecial......
  • Golang 构建 Apache thrift 应用
    安装去官网下载安装包,然后编译安装。https://thrift.apache.org/download./configure&&make当然如果我们使用了MacOS我们将可以方便的直接使用 Homebrew进行......
  • 【转】golang bufio、ioutil读文件的速度比较(性能测试)和影响因素分析
    golang读取文件的方式主要有4种:使用File自带的Read方法使用bufio库的Read方法使用io/ioutil库的ReadAll()使用io/ioutil库的ReadFile() 使用io/ioutil库的ReadFile()......
  • 【转】golang的log.Fatal()和panic()函数的区别
    golang的log.Fatal()和panic()函数的区别在讲两者区别之前我们先看一下os.Exit()函数的定义:funcExit(codeint)Exitcausesthecurrentprogramtoexitwiththe......
  • golang拾遗:实现一个不可复制类型
    这是golang拾遗系列的第六篇。这个系列主要用来记录一些平时不常见的知识点,偶尔也会实现些有意思的小功能,比如这篇。golang拾遗系列目录:golang拾遗:指针和接口golang拾......
  • Golang微服务(一)
    Golang微服务(一)目录Golang微服务(一)一、protobuf常规使用及踩坑记录1.类型映射关系及零值2.go_package设置3.protobuf的字段编号4.proto文件的import5.protobuf的message嵌......