gpt4 book ai didi

java - JNI 返回的 jobobject 未设置字段

转载 作者:行者123 更新时间:2023-12-02 07:00:00 25 4
gpt4 key购买 nike

我使用 JNI 设置一些字段,如下所示:

JNIEXPORT void JNICALL Java_HelloJNI_sayHello(JNIEnv *env, jobject thisObj) {
jclass complexClass = (*env)->GetObjectClass(env, thisObj);
jfieldID fid = (*env)->GetFieldID(env, complexClass, "exampleVar", "I");
jint secondnumber = 30;
(*env)->SetIntField(env, complexClass, fid, secondnumber);
}

但是设置 int 字段后,当我从第一次调用的位置读回它时,该值没有被修改。我尝试提供 setter 并将字段“exampleVar”公开,但这似乎没有帮助。

最佳答案

如果是非静态字段,则需要向 SetIntField() 提供对象,而不是类。

您缺乏错误检查掩盖了这一点。

关于java - JNI 返回的 jobobject 未设置字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16778664/

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