是否可以在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 }
在它的例子。
还要注意,用于运算符的语法不允许没有相应表达式的运算符的任何选项。
- 1 回答
- 0 关注
- 195 浏览
添加回答
举报
0/150
提交
取消