【发布时间】:2015-09-06 21:21:56
【问题描述】:
以下内容:
object SomeObj {
def addVertex(cc: Product): String = ???
def addVertex(cc: AnyRef): String = ???
}
case class Toto(s: String)
SomeObj.addVertex(Toto(""))
正在做:
Error:(8, 10) ambiguous reference to overloaded definition,
both method addVertex in object SomeObj of type (cc: Object)String
and method addVertex in object SomeObj of type (cc: Product)String
match argument types (A$A34.this.Toto)
SomeObj.addVertex(Toto(""));}
^
为什么?它不应该针对最具体的吗?
有趣的是,使用 Any 而不是 AnyRef 它可以工作。
干杯
【问题讨论】:
-
不是真的,你的例子对我有用,没有提到的错误。您使用的是哪个版本的 Scala?
标签: scala