lateinitVar无法解析使用从Kotlin 1.2.10 isInitialized

我想使用这个function

像这个例子中最简单的东西不适合我:

lateinit val foo = 1 val bar = foo::lateinitVar.isInitialized() 

但是我越来越

 unresolved reference lateinitVar 

我在Android-Studio中通过Gradle使用Kotlin 1.2.10(也安装了Kotlin 1.2.10插件)

代码中没有名称lateinitVar的variables,因此是错误的。 再看看这个例子:

 this::lateinitVar.isInitialized 

这里定义了一个variableslateinitVar ,该函数被调用。 示例中的代码片段可以被扩展(在列表的开头处加上小号),如下所示:

 class Foo { lateinit var lateinitVar: String fun initializationLogic() { println("isInitialized before assignment: " + this::lateinitVar.isInitialized) lateinitVar = "value" println("isInitialized after assignment: " + this::lateinitVar.isInitialized) } } 

这可能会更清楚。

另外,请注意, lateinit不能应用于val而只能是var