【发布时间】:2012-02-05 09:56:03
【问题描述】:
scala 代码很简单:
case class X(id: Option[String] = None, username: Option[String])
object X {
def create(x: X): X = {
x.copy(id = Some("111"))
}
}
class Test {
def test() {
val x = X.create(X(
username = Some("Hello, world!")))
val id = x.id.get // !!! reports: recursive value x needs type
}
}
请注意以下行:
val id = x.id.get
为什么会报告recursive value x needs type?
如果我更改变量名,为:
val dd = x.id.get
会好的。
PS:scala版本为:2.9.1.final
【问题讨论】:
-
有趣...我刚刚发了推文,以防万一...bit.ly/zU52GP
-
实际上这是 SI-5091 的副本 ...您应该将此示例添加到该票证中。
-
是的,但是那个问题是在 11 年 10 月 19 日提交的,那是 4 个月前。没有人关心它。
-
创建副本不会让重要的人更关心错误,事实上,如果你的动机是吸引注意力,则很可能恰恰相反。如果您想要更快的解决方案,请将您的新信息添加到原始票证中,和/或提供补丁。
标签: scala type-inference