您的位置:首页 > 编程语言 > C语言/C++

JNIEnv的使用在C和C++中的区别

2013-12-18 11:57 260 查看
JNIEnv的使用在C和C++中的区别

/article/3567016.html

对于JNIEnv *env来说,在C中调用:

(*env)->NewStringUTF(env, "Hello from JNI!");

而在C++中如果按照上述调用则会发生'base operand of '->' has non-pointer type '_JNIEnv''错误,需要如下调用:

env->NewStringUTF("Hello from JNI!");

原因:参见jni.h中对于JNIEnv的定义:

#if defined(__cplusplus)

typedef _JNIEnv JNIEnv;

#else

typedef const
struct JNINativeInterface*
JNIEnv;

#endif
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: