在 Go 中,reflect.SliceOf() 的反函数是什么?

在 Go 中,reflect.SliceOf()创建一个代表给定类型切片的类型:


SliceOf 返回元素类型为 t 的切片类型。例如,如果 t 表示 int,则 SliceOf(t) 表示 []int。


但是,我已经有一个 Type for[]int但想要获得一个 Type for int。有没有简单的方法来做到这一点?(注意,我是int举个例子。实际上,我所知道的是我有一个切片,我需要找到切片的每个元素是什么类型。)


我正在尝试从[]stringusing 反射中填充一段 bool、int、float 或 string ……这是相关的部分:


numElems := len(req.Form["keyName"])

if structField.Kind() == reflect.Slice && numElems > 0 {

    slice := reflect.MakeSlice(structField.Type(), numElems, numElems)

    for i := 0; i < numElems; i++ {

        // I have some other code here to fill out the slice

    }

}

但是为了填写切片,我需要知道我正在填写的切片的类型......


慕姐4208626
浏览 282回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go