我想使用JNI将java引用传递给c ++端,然后在java中获取对象,但我理解java不像c ++那样可以使用引用。另外我想防止使用像Vector这样的外部存储变量来保存创建的对象。我想它有一个像这样的引用类型“MyPointer”:
步骤
从java端创建对象
将引用从java端传递给c ++端,“MyPointer”是可以在java端返回对象的对象引用
使用“MyPointer”
码
public class MyClass{
static{
System.loadLibrary("MyClass");
}
public String name;
public static void backToJavaSide(MyPointer obj){
MyClass myClass=(MyPointer)obj;
System.out.println(obj.name);
}
public static native void toCppSide(MyPointer obj);
public static void main(String[] args){
MyClass m1=new MyClass();
m1.name="abc";
toCppSide(m1);
MyClass m2=new MyClass();
m2.name="def";
toCppSide(m2);
}
}
输出
abc
def
是否有任何可以模拟“MyPointer”的编码风格可以在java和c ++之间传递java对象?