假设你有一个简单的函数如下:
func create(path string) error {
if err := ioutil.WriteFile(path, []byte{}, 0666); err != nil {
return err
}
if err := os.Chmod(path, 0666); err != nil {
_ = os.Remove(path)
return err
}
return nil
}
我不喜欢忽略Remove()中的错误。但我也不想淹没Chmod()中的错误,也不想在我们没有成功创建()文件的情况下离开它。
这只是一个简单的例子,也许可以编写不同的函数来避免这种情况,但还有更复杂的情况会出现,而且我没有在Golang社区中看到过这种错误组合的习惯用法,所以这个惯用语是什么?