相关疑难解决方法(0)

scala 2.10中的Option.fold

在随后的scala 2.10.0-M7会话中:

scala> trait A
defined trait A
scala> class B extends A
defined class B
scala> class C extends A
defined class C
scala> Some(0).fold(new B){_=>new C}
<console>:11: error: type mismatch;
 found   : C
 required: B
              Some(0).fold(new B){_=>new C}
Run Code Online (Sandbox Code Playgroud)

我希望编译器找到常见的超类型(即A)而不是抱怨.是一般的类型推理限制,还是Option.fold定义方式的结果?

谢谢.

scala scala-2.10

4
推荐指数
1
解决办法
2056
查看次数

标签 统计

scala ×1

scala-2.10 ×1