是否可以在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 關注
- 222 瀏覽
添加回答
舉報
0/150
提交
取消