我有一个C++方法,它需要一个double数组作为参数。我从Java中调用此方法并需要传递一个double数组。C++例程读取和修改数组的值,我需要在Java中使用这些更新后的值。我应该如何做到这一点?
例如,考虑以下C++例程:
void myMethod( double *values, int size ) {
for ( int i=0; i < size; i++ ) {
values[i] = 2*values[i];
}
}
然后是Java代码:
double[] values = { 1.3, 1.1 };
myMethod(values,values.length);
System.out.println(values[0]); // prints 2.6
我猜调用myMethod的方式不能像上面那样调用...是吗?在Swig中需要什么才能使其工作。如果我不能像上面那样调用,那么我该如何将我的值传递给C++代码呢?