Scala compile为什么会';不允许范围内方法过载?
我注意到,scala编译器不允许范围内方法重载。 Scala版本2.11.12 不编译:Scala compile为什么会';不允许范围内方法过载?,scala,compiler-errors,compilation,Scala,Compiler Errors,Compilation,我注意到,scala编译器不允许范围内方法重载。 Scala版本2.11.12 不编译: val result = { def loop(a: String): String = ??? def loop(i: Int): Int = ??? ??? } def loop(a: String): String = ??? def loop(i: Int): Int = ??? val result = ??? 正确编译: val result = { def loop
val result = {
def loop(a: String): String = ???
def loop(i: Int): Int = ???
???
}
def loop(a: String): String = ???
def loop(i: Int): Int = ???
val result = ???
正确编译:
val result = {
def loop(a: String): String = ???
def loop(i: Int): Int = ???
???
}
def loop(a: String): String = ???
def loop(i: Int): Int = ???
val result = ???
问题:
val result = {
def loop(a: String): String = ???
def loop(i: Int): Int = ???
???
}
def loop(a: String): String = ???
def loop(i: Int): Int = ???
val result = ???
- 为什么会这样
- 范围内的方法和范围外的方法有什么区别
您的“正确编译”代码只有直接放在类/对象中才能工作。我想这只是重申了这个问题