比较JNI对象引用

互联网

我通过JNI从c ++调用Java方法。Java方法返回一个枚举STATUS。我已经有代表我的C ++代码中枚举的工作项目,如下所示:https ://stackoverflow.com/a/17441151/3352197

jclass clSTATUS    = env->FindClass("MyClass$STATUS");
jfieldID fidONE    = env->GetStaticFieldID(clSTATUS , "ONE", "LMyClass$STATUS;");
jobject STATUS_ONE = env->GetStaticObjectField(clSTATUS, fidONE);

所以,电话

jobject o = env->CallObjectMethod(jTestobject, test);

返回代表枚举状态(特别是ONE)的jobject。那么,我怎么知道它返回了哪个枚举?我试图将其与进行比较STATUS_ONE,但它们不匹配。

互联网

在Samhain指出我可能的错误之后,我自己找到了它。您只需要正确比较对象即可:

env->IsSameObject(o, STATUS_ONE);

谢谢!

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

比较NumPy对象引用

JavaScript中的对象引用比较

通过JNI代码使对象引用为空

比较JavaScript中的循环(自引用)对象

比较包含其他两个对象引用的对象

检查集合是否包含对象,按引用进行比较

比较两个对象引用的常见情况

位置在将对象与空引用进行比较中的影响

斯卡拉 | 如何获取对象引用进行比较?

Java:什么更快?比较两个对象引用还是比较两个基元?

通用对象比较方法与方法引用的用于比较的可变数量

我可以使用JNI在Java代码中引用C ++对象吗?

将类中包含的引用类型对象的列表/数组列表传递给JNI / C ++

如何在不使用对象引用的情况下在Angular中比较两个对象

模式比较-在填充源模型期间捕获了意外的异常:对象引用未设置为实例对象

如何比较两个引用类型的嵌套对象和动态对象的值

比较对象

JVM GC是否可以在引用比较的中间移动对象,即使双方都引用同一个对象,也导致比较失败?

JNI对象指针

引用对象

对象与引用

比较Java中的引用

如何让 Javers 通过字段值而不是 ID/对象引用进行比较

比较两个变量是否在python中引用了同一对象

使用assertEquals和“比较失败”窗口时如何显示对象字段而不是引用

对象装箱/比较C#和VB.Net之间的引用的区别

覆盖相等运算符时,通过引用比较两个对象

从对象内部引用对象

在JNI中创建整数对象