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

在外部函数中访问 Go 结构体的值

在外部函数中访问 Go 结构体的值

Go
蛊毒传说 2021-10-25 16:52:21
我有以下函数声明,它可以正常工作并打印出来。import (    "fmt"    "github.com/google/go-github/github")func LatestTag(user, project string) {    client := github.NewClient(nil)    releases, _, err := client.Repositories.ListTags(user, project, nil)    if err != nil {        fmt.Printf("error: %v\n", err)    } else {        release := releases[0]        fmt.Printf("Version: %+v\n", *release.Name)    }}编辑我修改了函数以返回一个字符串(我认为这不正确)但希望它可以帮助阐明我正在尝试做的事情。import (    "fmt"    "github.com/google/go-github/github")func LatestTag(user, project string) string {    client := github.NewClient(nil)    releases, _, err := client.Repositories.ListTags(user, project, nil)    var release string    if err != nil {        fmt.Printf("error: %v\n", err)    } else {        release := releases[0]    }    return *release.Name}我想返回的值*release.Name而不是仅仅打印出来,以便我可以从另一个函数访问该值,但我不明白在这种情况下返回是如何工作的(对 Go 来说非常新)。我在想我可以将结构作为字符串返回,但在运行时会出错。release.Name undefined (type string has no field or method Name)这让我觉得我没有正确地处理这个问题。有人可以指出我正确的方向吗?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 152 浏览
慕课专栏
更多

添加回答

举报

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