- 对于golang来说,T和*T属于两种不同的方法集,编写方法的时候,最好的办法就是保持某个类型方法集的一致性,只用一种receiver。
- struct 变量只能调用值类型 receiver 的方法,但 struct 指针是能调用值类型和指针类型 receiver 的方法的。
- 基础类型不建议使用方法,本身按引用调用的变量,也不建议使用方法。
- 方法和变量的定义必须在同一个package下。
参考:
https://www.jianshu.com/p/da264d9b1d00
https://golang.org/doc/faq#different_method_sets
有疑问加站长微信联系(非本文作者)