问题描述
如 Scala 3 docs 中所述,不能用通配符表示的存在类型通常被删除。这是我的代码
Scala 2
trait Test[A]
val t: T forSome { type T <: Test[Int] } = null //fine
Scala 3
尝试使用通配符在 Scala 3 中重写它:
trait Test[A]
val t: _ <: Test[Int] = null //error: Unbound wildcard type
文档就是这么说的
只能使用通配符表示的存在类型(但不能 forSome) 仍受支持,但被视为细化类型
问题:为什么我的示例不起作用。有没有办法让它工作?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)