Type mismatch. Required: Nothing Found: T
来源:9-3 案例:为数据类实现 DeepCopy

哎呦不错aa
2023-03-13
fun <T:Any>T.deepCopy():T{
...
val value = (this::class).memberProperties.first{it.name == parameters.name}.get(this)
...
}
这里面的get方法 receiver 为什么是Nothing呢?
已知:this::class 这里是协变 KClass, get 是逆变点,以及星投影中型变的转换规则。
写回答
1回答
-
bennyhuo
2023-03-13
是说 get 的参数是吗?out T 在参数位置,也就是逆变点,所以就成了Nothing。10
相似问题