2017-06-16 20 views
-2

私は、Android上でJNIで働いていたし、私のような何かをしようとしていた。typedefの再定義エラー

foo.hというを:

class jobject; //error here! 

class Foo { 
void dowork(const jobject&); 
} 

Foo.cpp

#include <jni.h> 
: 
: 
Foo::dowork(const jobject& obj) 
{ 
    //Do something 
} 

私はthisのようなものを持っていることがわかりますが、私はその鉱山が別の場合です。私は匿名の構造体ではなく名前付きの構造体にtypedefを持っていません。私たちは、ファイルjni.h

typedef _jobject*  jobject; 

here表示された場合:

class _jobject {}; 
+0

_exactly_を行う場所だから、このエラーを取得しますか?ここにはtypedefはありません。 –

+3

'do'はキーワードです。これはコンパイラによって実際に受け入れられていますか? –

+0

あなたのエラーは何ですか? –

答えて

0

をあなたは基本的にこれをやっている:

typedef int* Foo; // typedefing Foo to int* 

class Foo   // attempt to declare a class with a name already used for typedef 
{ 
}; 
+0

だから私はJNIヘッダを変更できないので、私が試みているような何かをする方法はありませんか? – Zoso

関連する問題