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

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

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

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

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

缘由:参见jni.h中对于JNIEnv的定义:错误

#if defined(__cplusplus)opera

typedef _JNIEnv JNIEnv;struct

#elseconst

typedef const struct JNINativeInterface* JNIEnv;

#endif

相关文章
相关标签/搜索