首先,我有一个遗留的 C++ 库,我正在将我的应用程序迁移到具有新 UI 的 Android。
在运行时,可能会动态创建和销毁多个 C++ 对象。我构建了一组 JNI native 方法来调用库来获取它。但是我应该在哪里保存那些 C++ 对象呢?我必须跟踪它们并在不需要时释放它们。
到目前为止,我只知道 Java 不能引用 C++ 对象。是否可以制作一个包含对 C++ 对象的引用的 Java 包装器类?
谢谢。
最佳答案
是的,这是可能的。您可以将指向 C++ 对象的指针存储在一个简单的 java int 中。就是这样 SWIG这样做。
关于java - 如何在 Java 代码中保留 C++ 对象?可能的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5577559/