He siguiente código:Cómo establecer cualquier valor a la interfaz {}
package main
import (
"fmt"
)
type Point struct {
x,y int
}
func decode(value interface{}) {
fmt.Println(value) // -> &{0,0}
// This is simplified example, instead of value of Point type, there
// can be value of any type.
value = &Point{10,10}
}
func main() {
var p = new(Point)
decode(p)
fmt.Printf("x=%d, y=%d", p.x, p.y) // -> x=0, y=0, expected x=10, y=10
}
quiero fijar valor de cualquier tipo con el valor pasado a decode
función. ¿Es posible en Go, o malinterpreto algo?
http://play.golang.org/p/AjZHW54vEa
Go es el paso por valor . Asignar algo a una variable local nunca afecta al exterior. Puede usar un tipo de referencia (como un puntero) para mutar lo que apunta a fin de compartir el estado; pero luego necesitaría un puntero del tipo correcto para que pueda asignarle algo a lo que apunta. – newacct