1

そのようなネイティブメソッドを呼び出す必要があります:

ジャバコード:

private native Object SendFiles(String strEmail, DeviceInfo info, String [] arrFiles, int cntFiles, ID idRequest);

SendFiles() を呼び出します。

SendFiles(strEmail, null, arrFiles, cntFiles, requestID);

および C++ コード:

jobject Java_com_xxxxx_xxxxx_controller_CoreController_SendFiles(JNIEnv *pEnv, jobject obj, jstring strEmail, jobject jinfo, jobjectArray jarrFiles, jint cntFiles, jobject jidRequest){
         .........

          if(jinfo == NULL)       // here crashes !!!!!!!
             doSomething();

         ............
}

Java 'null' は c 'NULL' に送信できますか?

どうすればこれを行うことができますか?

4

2 に答える 2

0

Checking for a null object in C++Checking if this is nullHow do we check if a pointer is NULL pointer?NULLなど、複数の投稿でC++ チェックを読むことができます。

ただし、この投稿は最も簡単なアプローチを提供しているようです: 検索結果が見つからない場合は「NULL」オブジェクトを返します

于 2013-02-21T18:07:19.433 に答える
0

jobjectC++ 側のポインター データ型です。Java からオブジェクトを渡すとnull、C++ はそれをNULLポインターとして受け取ります。比較してもOKです。

クラッシュはおそらく何か他のものと関係があります。診断出力を挿入してデバッグします。

于 2013-02-21T22:33:33.843 に答える