Вот простая программа, которая не работает:
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: invalid operation: v[property] (index of type *Vertex)
Я хочу получить доступ к свойству Vertex X, используя его имя. Если я выполняю v.X
, он работает, но v["X"]
не работает.
Может кто-нибудь сказать мне, как сделать эту работу?