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

golang 返回的参数太多

golang 返回的参数太多

Go
天涯尽头无女友 2022-01-04 13:37:18
当我将一个函数分配给变量并尝试调用它时。它会引发错误“返回的参数太多”package mainimport "fmt"func main() {  first_name := "Hello"  last_name := "World!"  full_name := func() {    return first_name  }  fmt.Println(first_name)  fmt.Println(last_name)  fmt.Println(full_name)}
查看完整描述

2 回答

?
青春有我

TA贡献1784条经验 获得超8个赞

您需要将函数定义更改为以下内容:


  full_name := func() string {

    return first_name

  }

这就是你告诉 Go 你打算从函数返回一些东西的方式,以及它是什么(在这种情况下是一个字符串)。


然后你应该像这样调用你新创建的函数:


   fmt.Println(full_name())


查看完整回答
反对 回复 2022-01-04
?
白衣非少年

TA贡献1155条经验 获得超0个赞

您没有正确声明您的函数。


full_name := func() string{ // add a return type

   return first_name

}

即使对于匿名函数,也必须声明参数和返回值。由于您没有指定任何返回值,因此您不能使用return xx.


另外,请注意,fmt.Println(full_name)将返回函数的地址,而不是执行函数。试试吧fmt.Println(full_name())。


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

添加回答

举报

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