它是能够使用一个操作员在场的功能去吗?

例如,在下列代码是可以替换 add+?

package main

import "fmt"

var cur, prev int = 1, 1

func 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))
}

如果这是不可能使用操作功能,然后我会理解的一个链接到文件的澄清这一点。

有帮助吗?

解决方案

运营商不是一流的价值在去(也大多数其他语言),所以没有,你不能通过他们的论点。注意到即使 去文件 使用 func(x,y int) int { return x+y } 在其例子。

还注意到, 语法用于运营商 不允许任何选择的操作员没有相应表达的运作。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top