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

无法访问结构的字段

无法访问结构的字段

Go
长风秋雁 2022-01-17 18:41:57
我正在尝试使用可用的列表包在 Go 中实现结构的链接列表。这是下面的示例代码 -package mainimport (    "container/list"    "fmt")type A struct{    B int }func main() {    l := list.New()    for i:=0;i<5;i++ {        c := A{i}        l.PushFront(c)    }    for e := l.Front(); e != nil; e = e.Next() {        fmt.Println(e.Value)    }}我得到的输出形式{0}与其他迭代相同。如何访问该字段以获取整数值?
查看完整描述

2 回答

?
倚天杖

TA贡献1828条经验 获得超3个赞

您必须将列表项转换回A. 你可以看到它在这里运行。


package main


import (

    "container/list"

    "fmt"

)


type A struct {

    B int

}


func main() {

    l := list.New()

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

        c := A{i}

        l.PushFront(c)

    }


    for e := l.Front(); e != nil; e = e.Next() {

        v := e.Value.(A)

        fmt.Println(v.B)

    }


}


查看完整回答
反对 回复 2022-01-17
?
绝地无双

TA贡献1946条经验 获得超4个赞

您可以通过 e.Value 访问结构,但无法访问结构值。你需要做 e.Value.B


查看完整回答
反对 回复 2022-01-17
  • 2 回答
  • 0 关注
  • 152 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号