这是一个不起作用的简单go程序:
package main
import "fmt"
type Vertex struct {
X int
Y int
}
func main() {
v := Vertex{1, 2}
fmt.Println(getProperty(&v, "X"))
}
func getProperty(v *Vertex, property string) (string) {
return v[property]
}
错误:
prog.go:18:无效的操作:v [属性](*顶点类型的索引)
我想要的是使用名称访问Vertex X属性。如果我这样做,v.X
它会起作用,但v["X"]
不会。
有人可以告诉我如何进行这项工作吗?