我需要創(chuàng)建StructField,我需要在其中傳遞反射。類型字段的類型值。我想通過其他類型,如反射。布爾,反思。Int to function,它將用于構(gòu)建 StructField。我無法使用下面的代碼執(zhí)行此操作reflect.StructField{
Name: strings.Title(v.Name),
Type: reflect.Type(reflect.String),
Tag: reflect.StructTag(fmt.Sprintf(`xml:"%v,attr"`, v.Name)),
}因為它Cannot convert an expression of the type 'Kind' to the type 'Type'
1 回答

白衣染霜花
TA貢獻1796條經(jīng)驗 獲得超10個贊
反映。類型是一種類型,因此表達式
reflect.Type(reflect.String)
將是類型轉(zhuǎn)換。類型是反射的。不實現(xiàn)接口類型的 Kind,因此轉(zhuǎn)換無效。reflect.Stringreflect.Type
表示的值為:reflect.Typestring
reflect.TypeOf("")
通常,任何(非接口)類型的描述符都可以使用反射器進行獲取。TypeOf() 函數(shù),如果你有一個值:reflect.Type
var x int64
t := reflect.TypeOf(x) // Type descriptor of the type int64
如果您沒有值,也可以這樣做。從類型化的指針值開始,然后調(diào)用以獲取指向的類型:nilType.Elem()
t := reflect.TypeOf((*int64)(nil)).Elem() // Type descriptor of type int64
t2 := reflect.TypeOf((*io.Reader)(nil)).Elem() // Type descriptor of io.Reader
- 1 回答
- 0 關(guān)注
- 86 瀏覽
添加回答
舉報
0/150
提交
取消