我有一个结构type clientData struct { msg Message connId int}我正在尝试将其添加到Go Listl := list.New()l.PushBack(&clientData { msg: Message { some fields }, connId: 1});现在,我如何*clientData从 List 取回数据作为数据类型?我试过l.Front().Value了,但这会返回一个界面......我很确定我不明白 Go here 的编组/编组逻辑......
1 回答
郎朗坤
TA贡献1921条经验 获得超9个赞
集合中go包含一个raw 类型(Element.Value👉🏻空interface{})。每次从以下位置获取值时,您都必须分配类型list:
l := list.New()
l.PushBack(&clientData {
msg: Message {
some fields
},
connId: 1,
})
cd, ok := l.Front().Value.(*clientData)
if !ok {
panic(errors.New("not a client type"))
}
fmt.Println(cd.connId)
- 1 回答
- 0 关注
- 93 浏览
添加回答
举报
0/150
提交
取消