你叫什么(* receiverType).method(接收者)?

时间:2017-02-28 09:20:11

标签: go

我最近了解到你可以通过(*receiverType).method(receiver)来调用接收者的方法,其中第一个参数始终是接收者本身。

func main() {
    c := &Cool{}
    c.say("Cool!")
    (*Cool).say(c, "Hot!") // <-- this
}

type Cool struct {
}

func (it *Cool) say(s string) {
    fmt.Println(s)
}

https://play.golang.org/p/vVjr42ceqA

这种语法有名称吗?为什么这会编译?

0 个答案:

没有答案