我对以下Golang代码的结构感到困惑:
type Team []*athlete
func (s Team) Len() int {
//some code here
}
func (s Team) Swap(i, j int) {
s[i], s[j] = s[j], s[i]
}
我是新手,不熟悉这个函数声明结构。什么是输入/输出值?对我所确定的是一个天真的问题道歉。试图谷歌,引用我的Go书,仍然困惑。
答案 0 :(得分:2)
在声明func (r Thing) Name(variable aType) otherType
中,各种事物(按顺序):
func
是"这是一个功能"关键字(r Thing)
表示"这是Thing
类型的方法,调用该方法的值将位于变量r
" (正常功能没有接收器;方法总是只有一个接收器)。Name
是方法的名称(variable aType)
是一个参数列表,在本例中是一个类型为aType
的参数。对方法赋予零参数是完全有效的。otherType
是返回类型,如果不存在有用的返回值,则可以省略。