6

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

4

1 回答 1

9

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

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
于 2012-06-07T15:50:46.953 回答