Reflection 使类型指向带有反射的指针

Reflection 使类型指向带有反射的指针,reflection,go,Reflection,Go,鉴于此: var v reflect.Value = ... v.Type() // *model.Company 如何实例化新的model.Company并使用反射修改其字段?大致如下: v := reflect.ValueOf(&Company{}) t := v.Type() c := reflect.New(t.Elem()).Elem() c.FieldByName("Name").SetString("Reflection Inc.") fmt.Printf("%#v\n

鉴于此:

var v reflect.Value = ...

v.Type() // *model.Company

如何实例化新的model.Company并使用反射修改其字段?

大致如下:

v := reflect.ValueOf(&Company{})
t := v.Type()
c := reflect.New(t.Elem()).Elem()
c.FieldByName("Name").SetString("Reflection Inc.")
fmt.Printf("%#v\n", c.Interface())
// => main.Company{Name:"Reflection Inc."}
操场上的工作版本:


你们这些家伙一直在帮我节省时间。希望有一天我能归还一些东西。。顺便说一句,它就像一个符咒;谢谢古斯塔沃。