JNIにはjタイプがあります。 int
の場合はjint
、boolean
の場合はjboolean
のようになります。私は後者のタイプがc/C++タイプであることを理解しています。しかし、タイプはjtype
ですか?本では、このタイプについてもネイティブタイプと言及しています。それはどういう意味ですか?jtype(JNIの)とC/C++のタイプの違いは何ですか?
EDIT:
JTYPEの使用は何ですか?ネイティブ型によってjni.h
から
JNIにはjタイプがあります。 int
の場合はjint
、boolean
の場合はjboolean
のようになります。私は後者のタイプがc/C++タイプであることを理解しています。しかし、タイプはjtype
ですか?本では、このタイプについてもネイティブタイプと言及しています。それはどういう意味ですか?jtype(JNIの)とC/C++のタイプの違いは何ですか?
EDIT:
JTYPEの使用は何ですか?ネイティブ型によってjni.h
から
、
typedef unsigned char jboolean
typedef unsigned short jchar
typedef short jshort
typedef float jfloat
typedef double jdouble
typedef long jint
typedef jint jsize
彼らはネイティブCまたはネイティブのマシン同等物を意味する、Java言語のネイティブ意味するものではありません。 j
のバージョンは、map Java types to native C typesを支援します。 このマッピングの利点は、基本的なJavaタイプに精通しているJavaプログラマーは、ちょうど追加されたj
で同じ名前を使用し続けることができることです。彼はマシンの基本タイプにどのようにマッピングされるのか気にする必要はありません。 typedefによって注意が払われます。また、基本となるマシンのアーキテクチャが変更された場合、まだあなただけのtypedefがコメントであなたの懸念に対処
を行いますchaging、気にする必要はありません、_jstring
はクラスがあります。そしてjstring
は、我々はそれはおそらく、対応するタイプのためだけのtypedefです
と文字列については? –
@ program-o-steve私の編集 –
をチェックすると、_jtype_の使用は正確に何ですか?それがちょうど型定義 –
C++で
String
クラスを持っていると同じように、このクラスへのポインタです。 'typedef std :: int32_t jint'のようにします。 – Pubby
jni.hに「jtype」はありません。「Jni TYPEs」へのショートカットかもしれません。 – Jerome
@Jerome by jtype私は_jchar、jint、jshort、jlong、jbyte、jdoubleを意味します。 –