为了账号安全,请及时绑定邮箱和手机立即绑定

如何从 Go 列表中检索结构指针

如何从 Go 列表中检索结构指针

Go
慕仙森 2022-07-04 16:31:12
我有一个结构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)


查看完整回答
反对 回复 2022-07-04
  • 1 回答
  • 0 关注
  • 93 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信