Scala中是否使用了具有多个参数的隐式函数?
允许使用具有多个参数的隐式函数,即:Scala中是否使用了具有多个参数的隐式函数?,scala,Scala,允许使用具有多个参数的隐式函数,即: implicit def it(path: String, category: String):Iterator[String] = ... 但是Scala编译器能用它做些有用的事情吗?如果没有,它为什么不抱怨呢?是的,如果你要求这样一个隐式的函数,编译器可以对它做一些事情 def f(implicit ev: (String, String) => Iterator[String]) = ... 很棒的scala,如果不是作为隐式转换器,那么作为
implicit def it(path: String, category: String):Iterator[String] = ...
但是Scala编译器能用它做些有用的事情吗?如果没有,它为什么不抱怨呢?是的,如果你要求这样一个隐式的函数,编译器可以对它做一些事情
def f(implicit ev: (String, String) => Iterator[String]) = ...
很棒的scala,如果不是作为隐式转换器,那么作为隐式参数)@yura如果你研究scala语言规范,你会发现这两件事实际上是统一的。查找从
A
到B
的隐式转换相当于查找A=>B
类型的隐式参数。所以隐式转换和隐式参数基本上是一样的。