具有指针接收器方法

时间:2019-05-11 11:39:46

标签: go embedding

规范说:

给定一个结构类型S和一个定义的类型T,在该结构的方法集中包括以下改进的方法:

  • 如果S包含嵌入字段T,则S和* S的方法集都包括接收者T的提升方法。* S方法集还包括接收者* T的提升方法。

  • 如果S包含一个嵌入字段* T,则S和* S的方法集都包括带有接收者T或* T的提升方法。

https://tip.golang.org/ref/spec#Struct_types

因此,据我所知,在类型为T(not * T)的嵌入式字段和带有接收者* T的struct S(not * S)方法的情况下,S方法集不得包含此方法,但是将编译此示例。

但此代码已编译:https://play.golang.org/p/2ypMgbehs_r

我的误会在哪里?

0 个答案:

没有答案