2011-08-29 71 views
14

有幾個參數隱函數是允許的,那就是:在Scala中有幾個參數有隱式函數嗎?

implicit def it(path: String, category: String):Iterator[String] = ... 

但Scala編譯器可以用它做什麼有用嗎?如果沒有,爲什麼它不抱怨?

回答

18

是的,編譯器可以做一些事情,如果你問這樣一個隱含的。

def f(implicit ev: (String, String) => Iterator[String]) = ... 
+0

精彩階,如果沒有隱含的轉換器,然後根據隱含參數) – yura

+1

@yura如果你看看Scala語言規範,你會看到這兩個東西實際上是統一的。查找從'A'到'B'的隱式轉換等同於查找類型爲'A => B'的隱式參數。所以隱式轉換和隱式參數大致相同。 – ghik