登录
首页 >  Golang >  Go问答

go 返回可选接口值的惯用方法是什么?

来源:stackoverflow

时间:2024-04-09 19:18:31 305浏览 收藏

对于一个Golang开发者来说,牢固扎实的基础是十分重要的,golang学习网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《go 返回可选接口值的惯用方法是什么?》,主要介绍了,希望对大家的知识积累有所帮助,快点收藏起来吧,否则需要时就找不到了!

问题内容

假设我有一些类型和一个接口:

type foo struct {}

type bar struct {}

type stuff interface {
  isstuff()
}

func (_ foo) isstuff() {}
func (_ bar) isstuff() {}

现在假设我有一个函数可能返回 stuff 或什么也不返回。

func FindStuff() ??? {
 // ...
}

如果返回类型是普通结构,我可以只返回指向该结构的指针并在函数内返回 nil 。 但是在 go 中使用指向接口的指针似乎是不受欢迎的(并且查找接口是否为 nil 也很棘手)。

那么如何定义findstuff呢?


正确答案


只要返回接口,它就可以返回nil

func FindStuff() Stuff {
    return nil
}

Working example

今天关于《go 返回可选接口值的惯用方法是什么?》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>