Go 方法返回的 struct,是指针还是直接返回比较好?

songday · 2020-05-08 09:15:12 · 5959 次点击

建议基于你的需求做考虑: 1.认为它有必要常驻内存,或者在一段时间内(例如某个用户的特性)常驻 则考虑用指针 2.其他情况建议用值返回

ps:不要什么都依赖gc,在golang编程中,更多的考虑怎么减少gc

#6
更多评论

凡是struct我都返回指针。

连map和slice很多时候我都会返回指针(用type自定义一个类型,比如type xxxx *[]string)。

优点是以后如果重构,基本不会调整调用方的代码。

都用自动GC的语言了,不要过多考虑细节。

细节等具体业务跑起来根据实际情况再优化。

#1

建议指针。 至少代码层面判断空值好判断

#2