Kotlin:编译器不会推断一些运算符的泛型类型

为什么Kotlin的编译器不能用一些运算符调用来推断泛型? 例如:

class Example { operator inline fun <reified T : Any> unaryMinus(): T { ... } } 

在主要方法中使用它…

 fun main(args: Array<String>) { val ex = Example() val works: Boolean = ex.unaryMinus() val doesntWork: Boolean = -ex } 

在这里输入图像描述

这不幸的是一个错误的结果: https : //youtrack.jetbrains.com/issue/KT-10453

Interesting Posts