fehler
-
hallo
kann mir mal jemand folgende fehlermeldung erklären
error C2664: 'CallStaticDoubleMethodA' : Konvertierung des Parameters 3 von 'double' in 'union jvalue *' nicht moeglich
Es gibt keinen Kontext, in dem diese Konvertierung moeglich istalso jvalue sieht folgender massen aus. wie muss ich es machen damit ich einen double übergeben kann?
typedef union jvalue { jboolean z; jbyte b; jchar c; jshort s; jint i; jlong j; jfloat f; jdouble d; jobject l; } jvalue;
-
ich habe mal jni gemacht im c style (nicht c++)
du kannst einfach casten
z.B.
return (jint) len;wenn len ein int war.
in c++ dann analog die neuen casts ... static cast..
ps: da ist aber ein pointer, der erwartet wird...
[ Dieser Beitrag wurde am 30.03.2003 um 14:53 Uhr von elise editiert. ]
-
ps: da ist aber ein pointer, der erwartet wird...
und genau da liegt mein problem ich sehe nicht wie ich mein double wert dort übergeben kanndie methode sieht folgender massen aus:
jdouble res = env->CallStaticDoubleMethodA(jclass,jmethodID,jvalue);
wie kann ich mein double wert dem jvalue übergeben?
-
problem gelöst
danke
-
union jvalue { jboolean z; jbyte b; jchar c; jshort s; jint i; jlong j; jfloat f; jdouble d; jobject l; operator double* () { return &d; } };