У меня есть метод в 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 ++?