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

使用运算符代替函数

使用运算符代替函数

Go
繁花不似锦 2021-04-08 13:15:23
是否可以在go中使用运算符代替函数?例如,下面的代码是有可能取代add用+?package mainimport "fmt"var cur, prev int = 1, 1func fib(f func(int, int) int) int {    return f(cur, prev)}func main() {    add := func(x int, y int) int { return x + y };    fmt.Println(fib(add))}如果不可能将运算符用作函数,那么我希望获得指向澄清此说明的文档的链接。
查看完整描述

1 回答

?
九州编程

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

运算符不是Go语言(不是大多数其他语言)中的一等值,因此不能,您不能将它们作为参数传递。即使通知转到文档使用了func(x,y int) int { return x+y }在它的例子。

还要注意,用于运算符的语法不允许没有相应表达式的运算符的任何选项。


查看完整回答
反对 回复 2021-04-26
  • 1 回答
  • 0 关注
  • 195 浏览
慕课专栏
更多

添加回答

举报

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