如果A出现在逆变位置,Seq+A如何在A中协变:
def :+ (elem: A) : Seq[A] ?据我所知,方法参数类型是一个逆变量位置。我错过了什么?
发布于 2011-03-16 03:50:44
这是用例签名。这不是一个真正的签名,只是您在常见用例中经常看到的签名。
真正的签名是:
def :+ [B >: A, That] ( elem : B )(implicit bf : CanBuildFrom[Seq[A], B, That] ) : That如您所见,它甚至不能保证返回Seq,更不用说A了。
https://stackoverflow.com/questions/5316818
复制相似问题