use*_*187 5 go

我很难理解为什么这些规则与指针类型.vs的方法集相关联.值类型

有人可以解释一下原因(从界面表的角度来看)

(William Kennedy博客的片段)

Values          Methods Receivers
-----------------------------------------------
T               (t T)
*T              (t T) and (t *T)

Methods Receivers    Values
-----------------------------------------------
(t T)                 T and *T
(t *T)                *T

来自规范的片段

方法集

类型可以具有与其关联的方法集.接口类型的方法集是其接口.任何其他类型T的方法集由用接收器类型T声明的所有方法组成.相应指针类型*T的方法集是用receiver*T或T声明的所有方法的集合(也就是说,它还包含方法一套T).其他规则适用于包含匿名字段的结构,如结构类型一节中所述.任何其他类型都有一个空方法集.在方法集中,每个方法必须具有唯一的非空方法名称.

类型的方法集确定类型实现的接口以及可以使用该类型的接收器调用的方法.