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

嵌套结构中的访问字段

嵌套结构中的访问字段

Go
收到一只叮咚 2021-10-25 16:13:20
我在一些应该很简单的事情上遇到了麻烦。我正在研究使用 codegangsta 的优秀cli包的东西,但我试图从嵌套结构访问一个属性并且失败了。例如,我有:func Something() []cli.Flag {    return []cli.Flag{        cli.StringFlag{            Name: awesome            Usage: "be awesome"           },         cli.StringFlag{            Name: awesome2           },           <etc.>         }我有一个函数接收返回的值flags []cli.Flag并尝试打印出Name每个成员的字符串值,但我似乎无法访问切片中的嵌套内容。这样做的正确方法是什么?编辑:这就是我所做的,加上 Mayank 的出色回答func PrintFlagsForDriver(name string) error {        for driverName := range drivers {                if name == driverName {                        driver := drivers[driverName]                        flags := driver.GetCreateFlags()                        stringFlag, ok := flags[0].(cli.StringFlag)                        if ok {                                fmt.Println(stringFlag.Name)                        }                }        }        return fmt.Errorf("Driver %s not found", name)}我现在遇到index out of range运行时错误,但我认为这是我做错的另一件事。
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 136 浏览
慕课专栏
更多

添加回答

举报

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