Possible Duplicate:
Context bounds shortcut with higher kinded-types




为什么Scala编译器不让我写这个?

class TypeCtor[M[_]: ClassManifest]


它抱怨“错误:类型M接受类型参数”。如果我只要求ClassManifest,那么无论M的参数化是什么,编译器都应该能够插入它,不是吗?

这按预期工作:

class TypeCtor[M[_]](implicit val ev: ClassManifest[M[_]])
(new TypeCtor[Vector]).ev.erasure // => class scala.collection.immutable.Vector

最佳答案

请参阅我对this question的回答。

10-04 13:14