草庐IT

fieldVal

全部标签

go - 使用反射取消引用结构指针和访问字段

我正在编写一个递归函数,它遍历结构中的每个原始字段。我需要能够支持结构字段、结构指针、字段和字段指针。我试过做这样的事情,对于每个字段,我首先检查它是否是一个指针。如果是,我会打开它的类型,而不仅仅是字段本身。//GetreflectvaluesandtypesvalOf:=reflect.ValueOf(dest).Elem()typeOf:=valOf.Type()//Iteratethrougheachfieldfori:=0;i我遇到的问题是,在调用.Elem()之后,任何指针(无论是否为结构)的类型都是reflect.Invalid。无论该字段是结构体还是原语,我如何才能首先

go - 使用反射取消引用结构指针和访问字段

我正在编写一个递归函数,它遍历结构中的每个原始字段。我需要能够支持结构字段、结构指针、字段和字段指针。我试过做这样的事情,对于每个字段,我首先检查它是否是一个指针。如果是,我会打开它的类型,而不仅仅是字段本身。//GetreflectvaluesandtypesvalOf:=reflect.ValueOf(dest).Elem()typeOf:=valOf.Type()//Iteratethrougheachfieldfori:=0;i我遇到的问题是,在调用.Elem()之后,任何指针(无论是否为结构)的类型都是reflect.Invalid。无论该字段是结构体还是原语,我如何才能首先