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

Golang - 在返回语句中使用具有多个返回值的函数

Golang - 在返回语句中使用具有多个返回值的函数

Go
蝴蝶不菲 2022-11-08 15:15:20
如果我在 Go 中有一个“内部”/嵌套函数:    findDups := func(groups []string) (int, string) {        dupCnt := 0        dups := ""        prevGroup := ""        for _, group := range groups {            if group == prevGroup {                dupCnt++                dups += group + ", "            }            prevGroup = group        }        return dupCnt, dups    }语言中有没有一种方法可以让我从“外部”/父函数的返回语句中调用这个函数,例如:return findDups(sourceGroups), findDups(targetGroups)父函数的返回签名是 (int, string, int, string)。编译器抱怨以下消息:2 值 findDups(sourceGroups) (类型的值 (int, string)),其中需要单个值我可以通过创建四个变量来处理这个问题,这些变量来自对内部函数的两次调用的返回值,并在 return 语句中使用它们,但想知道是否有更直接的方法来做到这一点。我试过用谷歌搜索它,但似乎无法形成正确的问题。
查看完整描述

1 回答

?
万千封印

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

该规范非常清楚您的选择是什么(强调我的):

  1. 返回值或值可以显式地列在“return”语句中。

  2. “return”语句中的表达式列表可能是对多值函数的一次调用。

  3. 如果函数的结果类型为其结果参数指定名称,则表达式列表可能为空。


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

添加回答

举报

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