Go 中的方法前缀

在 go 中,有一个“前缀”可以放在一个函数上。这有什么用?这有什么用例?


例子:


type a struct {

    Thing string

}


func (something a) b() {

    fmt.Println(something.Thing)

}


Helenr
浏览 191回答 2
2回答

温温酱

编程就是交流:你正在与机器交流它应该做什么,并与其他程序员(包括你未来的自己)交流。许多更高级别的编程结构的目的是使代码更具表现力——也就是说,更清楚地说明程序员的意图。Go 的函数接收器就像更传统的面向对象语言中的“自我”对象。这是一种将一组函数组合在一起并说“这些方法的存在主要是为了对这种类型的对象进行操作”的一种方式,而不仅仅是碰巧采用该类型参数的通用实用方法。换句话说,它们的存在是为了描述抽象对象的行为,其状态由结构描述。

PIPIONE

在这种情况下,这意味着该函数附加到结构上,以便您可以在a.b()其他地方执行。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go