重载解析歧义.所有这些函数都匹配kotlin中的error



如何在kotlin中解决这个问题,我想在var fn分配sum函数,但它给出了错误。

重载解析歧义。所有这些函数都匹配

fun main(args:Array<String>) {
println(sum(2.0,3.0))
println(power(2.0,3.0))
var fn=::sum
}
fun sum(a:Double, b:Double):Double{
return a+b
}
fun power(a:Double, b:Double):Double{
return a.pow(b)
}

上面的代码没有问题-它可以正确编译。如果您的代码中有更多的sum()函数,例如用于求和整数或其他数字类型,那么您可以通过向编译器提供期望的类型来选择它们:

var fn: (Double, Double) -> Double = ::sum

最新更新