2010-09-22 22 views

回答

1

是的。只要接口使用標準的C調用約定,Java就不會真正關心它實現的語言。這意味着你必須圍繞在extern "C"塊的聲明,如果你碰巧在寫C++:

#include <jni.h> 
#ifdef __cplusplus 
extern "C" { 
JNIEXPORT jstring MyNativeMethod(JNIEnv *, jobject); 
} 
#endif 

這取決於你是否在C,C++或任何其他語言實現MyNativeMethod

當然,這已經在javah,extern "C"和全部生成的頭文件中完成了。