我正在尝试创建一个通用工厂方法,它具有接收该通用类型参数并返回该通用类型结果的方法的上限。我尝试了以下代码:
def apply[Type <: {def *(that: Type): Type}](length: Int)(implicit manifest: Manifest[Type]) = new Array[Type](length)
但是我遇到了这个错误,
Parameter type in structural refinement may not refer to an abstract type defined outside that refinement
有没有办法让这个工作?