【发布时间】:2016-02-10 19:23:24
【问题描述】:
为什么 Scala 中的偏函数应用程序需要提供类型,例如:
def func(a: Int, b: Int) = ???
def func1 = func(_ : Int, 1) // compiles fine
def func1x = func(_, 1) // does not compile
// error: missing parameter type for expanded function ((x$2) => func(x$2, 1))
为什么在这种情况下不推断类型?推断类型会导致语法复杂或模棱两可,还是类型可能不像我认为的那样清晰?
【问题讨论】:
-
仅供参考,您只需为顶级定义提供类型注释即可轻松避免此类情况。无论如何,这对于文档目的是有好处的。
-
@Cubic 恐怕我不明白。你能举个例子吗?在这种情况下会是什么样子?
标签: scala type-inference partial-application