gpt4 book ai didi

kotlin - Kotlin,get []运算符上的NoSuchMethodError

转载 作者:行者123 更新时间:2023-12-02 12:48:38 30 4
gpt4 key购买 nike

我在mine的第三方库中有以下代码:

class Program {

val uniforms = HashMap<String, Int>()
operator fun get(s: String) = uniforms[s]!!
}

当我使用 [ ]运算符时
glUniformMatrix4fv(uniformColor.uniforms["cameraToClipMatrix"], 1, false, matBuffer)

我得到这个:

Caused by: java.lang.NoSuchMethodError: glsl.Program.get(Ljava/lang/String;)I



为什么?

一切似乎都很好
uniformColor.uniforms.contains["cameraToClipMatrix"]

返回true,否则返回 null
我想念什么?

Kotlin 1.1-rc-91

最佳答案

看起来像是Kotlin编译器中的错误。

Java中的Map.get是Object-> Object,而Kotlin中的K-> V。

我怀疑这会导致实现生成fun get(s: String):Any?,并且 call 站点尝试查找fun get(s: String):Int

关于kotlin - Kotlin,get []运算符上的NoSuchMethodError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42503938/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com