比如已有一个结构体: type T struct{ }
t := T{}
如何动态给T类型或者t对象添加字段。比如代码执行阶段,我想动态添加两个类型为字符串的字段,名称为Name和Phone,甚至可以动态添加Tag? 我查了一下reflect包,但是没找到方法。请各位大侠不吝赐教!
有疑问加站长微信联系(非本文作者)

比如已有一个结构体: type T struct{ }
t := T{}
如何动态给T类型或者t对象添加字段。比如代码执行阶段,我想动态添加两个类型为字符串的字段,名称为Name和Phone,甚至可以动态添加Tag? 我查了一下reflect包,但是没找到方法。请各位大侠不吝赐教!
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
`单行代码`
你牛逼了,这类强类型语言,修改了这些信息,就是一个新的类型了,和老的类型没有关系,应该是不可能的。Java里面是通过ASM动态修改二进制这类非法手段编码产生一个新的class,GoLang都编译成exe了,你怎么搞?
动态添加字段做不到。如果只是想存储一些字符串信息,也许你可以给结构体加一个map[string]string去存储。
好吧,是我想多了。动态语言玩多了,就是容易胡思乱想。。。
你的意思是一个属性的类型既可以是数组或map这种动态类型吧,静态语言好像做不到吧,不太灵活