初级会员
  • 第 33581 位会员
  • humin_3306
  • 胡敏
  • 2019-04-01 14:01:27
  • Offline
  • 19 63

最近发布的文章

    暂无

最近分享的资源

    暂无

最近发布的项目

    暂无

最近的评论

  • @jarlyyn 是的。我弄得差不多清楚了,但是还有一个问题,就是如果我一个结构体中,有个指针类型的值,初始的时候是nil,我改怎么通过反射给它一个值啊、、、、
  • @jarlyyn 不还意思。。。。我知道,在最外层的时候,掉一个方法可以主动传一个地址进去,但是在方法内部,动态的时候,怎么办呢?比如func F1(a interface{}){ reflect.ValueOf(&a).Elem().FieldByName("xx").SetString("xx") } 就会报错,报的好像是不能再接口类型上调用SetString,而且无论怎么调用Elem方法获取原始值,都会报错,但是在调用F1()方法的时候,取地址就不会报错,这样 F1(&xxx)
  • #1 @a7505553 不是,如果要在f1里递归的话,就没办法在调用reflect.valueof()的时候使用取符了,因为方法的形式参数是interface{},去过对这个参数取地址再调用elem()方法,又会报其他错误,再调elem方法也一样,再外面调用的时候,可以对实参取地址,就没问题