标题基本上说明了一切..
我可以创建一个在运行时返回另一个 Go 方法的 Go 方法吗?一个简单的例子:
type Person struct {
name string
age uint
}
func (p Person) createGetNameMethod() /*return signature is a method for Person*/ {
return /*return a new anonymous method here for Person*/
}
Run Code Online (Sandbox Code Playgroud)
Go 方法是一等函数吗?
是的,他们是。
我可以创建一个返回另一个 Golang 方法的 Golang 方法 [...]?
是的当然。
[我可以]返回一个新的匿名方法[吗?]
不,当然不。
方法集是在编译时确定的。方法是普通的一流函数,但它们不能在运行时更改或创建:
您可以返回方法集中存在的方法,但不能向方法集中添加方法。
反射允许类似的事情,但在你的情况下不允许。
| 归档时间: |
|
| 查看次数: |
245 次 |
| 最近记录: |