データ型について質問があります。コーディングを開始する前に明確にしたいと思います。配列または double のバッファーを返す C++ のメソッドがあるとします。次に、Java がデータを処理できるように、JNI ヘッダーを使用して、この double[] を jdouble に変換する必要があります。
私の最初の質問は、double の配列または double のバッファーを返すように C++ メソッドを構成する必要があるかどうかです。ほぼ同じだと思いますが、どちらが優れているかわかりません。また、Java が理解できる方法でバッファを変換するにはどうすればよいですか?
これは私がこれまでに持っているものです:
JNIEXPORT jdouble[] JNICALL Java_Test_getDouble[](JNIEnv *env, jobject obj)
{
double[] temp= new double[someSize];
temp = // call my C++ code
jdouble result = new jdouble[someSize];
for(i = 0; i < someSize; i++)
converting double in temp to jdouble in result;
return result;
}
その後、Java はそのデータに対して必要なことを何でも行うことができます。
私のコードは意味がありますか? についての投稿を読みましByteGetElement()
たが、ここで適用できるかどうかわかりません。本当に役立つ簡単な例を教えていただければ幸いです。そして最終的には、double の配列とバッファーのどちらを使用する必要があるかを知る必要があります。
どうもありがとうございました。