Joh*_*ood 0 scala parameterized
从Scala API,我得到了以下示例,它不能编译;
scala> def arr[T] = new Array[T](0)
<console>:10: error: cannot find class manifest for element type T
def arr[T] = new Array[T](0)
^
Run Code Online (Sandbox Code Playgroud)
我想知道,为什么它不编译(Scala API没有解释错误)?这不仅仅是一个普通的参数化方法吗?为什么编译器会抱怨它?
正如编译器错误消息所示,您需要一个Manifest约束.
scala> def arr[T : Manifest] = new Array[T](0)
arr: [T](implicit evidence$1: Manifest[T])Array[T]
Run Code Online (Sandbox Code Playgroud)