带有多个参数的scala隐式方法

时间:2012-06-07 15:44:57

标签: scala implicit

在对SIP-13的评论中,Martin Odersky暗示可以使用多个参数创建隐式方法。根据我的经验,隐式方法总是只有一个参数,我无法想象如何使用具有多个参数的隐式方法。有人能给出一些用例和解释吗?

1 个答案:

答案 0 :(得分:8)

例如,如果您需要函数类型的隐式参数:

implicit def foo(x: Int, y: Int) = y * x

def bar(x: Int, y: Int)(implicit f: (Int, Int) => Int) = f(x,y)

scala> bar(3,4)
res3: Int = 12