【发布时间】:2015-04-20 17:57:01
【问题描述】:
给定以下方法:
scala> def f(x: Int)(implicit y: Int, z: Int) = x + y + z
f: (x: Int)(implicit y: Int, implicit z: Int)Int
我可以定义一个隐式,然后应用它。
scala> implicit val x: Int = 5
x: Int = 5
scala> f(10)
res0: Int = 20
但是,显然,我不能只指定一个隐式参数:
scala> f(10)(y = 10)
<console>:10: error: not enough arguments for method f:
(implicit y: Int, implicit z: Int)Int.
Unspecified value parameter z.
f(10)(y = 10)
^
是否可以指定隐式参数,即y,但将z 留给隐式解析?
【问题讨论】:
标签: scala