go 语言随记

if wr, err := os.OpenFile(path, os.O_CREATE|os.O_WRONLY|os.O_TRUNC, 0644); err != nil {

以前有人跟我聊起go与java,我说go语言没有很好的异常处理机制,不像java,java中可以对异常进行统一处理。他说那是因为我还是用java的思维去思考go。其实我明白他当时根本就不知道我在说什么。go语言提供了panic与recover实现在对错误的处理,但go似乎不是太推崇这样做。上面那段代码是最常见的错误处理方式。C语言中经常用返回值等于0或等于一个负值代表错误。而go习惯用把错误放在方法返回的第二个参数中。以至于上面那段代码已成为go语言的标准模板了。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Go入门 Go介绍 部落图鉴之Go:爹好还这么努力? 环境配置 安装 下载源码编译安装 下载相应平台的安装包安装 ...
    齐天大圣李圣杰阅读 4,667评论 0 26
  • Go 语言没有像Java那样的 try/catch 异常机制,它不能执行抛异常操作,而是使用了panic 和 re...
    副班长国伟阅读 2,108评论 0 1
  • 错误和异常的区别 错误和异常是不同的概念 错误指的是可能出现问题的地方出现了问题,比如打开一个文件时失败,这种情况...
    一根很帅的藤藤菜阅读 2,406评论 0 3
  • 星期日,大雨 There is no such thing as bad publicity. 每日一我 6:30...
    sophietyl阅读 102评论 0 0
  • 不知何时在某公众号上读到的文字,今天突然长了脚从脑海里跑了出来。不过,细细品尝居然倒品出了美酒的味道,也罢,那今天...
    CKouder阅读 398评论 0 0