早上的大部分时间我都在尝试使用 JNA 从 Java 填充一组填充的结构并将其传递给 C++。我有很大一部分基于 JNA 的代码正在运行,我觉得这应该很简单,但我无法弄清楚或找到不使用 @deprecated 函数的示例。我怀疑这是微不足道的,当有人向我展示时我会感到愚蠢,但我真的很感激一些帮助。
关于我尝试过的一些背景知识:我不知何故怀疑它是否重要,但在学习了如何手动编写接口文件(并让它们工作)之后,我切换到了 JNAerator。JNAerator 翻译
MyStruct* mine
到
MyStruct mine
在爪哇。这让我有点困惑,因为在 Java 中 this 只能用于指向单个对象。有一次我看着使用
MyStruct** mine
这转化为
PointerByReference mine
但这似乎有点矫枉过正,因为我不需要修改结构,也不需要再次访问它们。从那时起,我已经尝试了所有我能想到的东西,但我从来没有成功发送比第一个结构更多的东西。