我试图移植的现有代码是用C++实现的。在我编写了java包装器并在类上运行javah以获得.h头文件之后。。。。有"正确"的做事方式吗?我现有代码的相应包装器应该用C还是C++编写?
谢谢!
如果您使用普通的JNI,您可以用C和C++编写。重要的是,如果您使用C++,那么JNI函数(如void Java_com_yourpackage_YourClass_yourMethod(JNIEnv* env, ...)
)必须声明为extern "C"
,但AFAIKjavah
是自动执行的。