我有一个函数,它接受值和字段的切片作为一组可选参数,并且该函数将每个值映射到一个字段并返回错误(如果有的话)给调用者,如下所示
func Unmarshall(source []interface{}, dest ...interface{}) error {
if len(source) != len(dest) {
return errors.New("source and destination doesn't match")
}
for i, s := range source {
dest[i] = s
}
return nil
}
在我为来电者提供的代码下方
for _, r := range rows.Values {
item := entity.Item{}
e :=Unmarshall(r,
&item.Name,
&item.Description,
&item.AddedUTCDatetime,
&item.ModifiedUTCDatetime)
if e == nil {
items = append(items, item)
}
}
但是上面的问题是即使我传入了指向字段的指针,也item.Name,item.Description, &item.AddedUTCDatetime, &item.ModifiedUTCDatetime不会保留中设置的值。Unmarshall func
上面的代码有什么问题吗?
 芜湖不芜
芜湖不芜 
					温温酱
 
					慕尼黑8549860
 随时随地看视频慕课网APP
随时随地看视频慕课网APP
相关分类