私はboost::tuple
のリストを持っています。私はこのタプルリストをSWIGを通してJavaバインディングに公開したいと思っています。私はSWIGによって生成されたMT wrap.cxxを、コンパイルしようとする。しかし、私は次のエラーを取得:boost :: tuples :: tupleをJavaバインディングに公開するにはどうすればいいですか?
d:\xyz\...\vector.h(115) : error C2678: binary '==' : no operator found which takes a left-hand operand of type 'const boost::tuples::tuple<T0,T1>' (or there is no acceptable conversion)
with
[
T0=std::string,
T1=std::string
]
c:\program files\microsoft visual studio 8\vc\platformsdk\include\guiddef.h(192): or 'int operator ==(const GUID &,const GUID &)'
while trying to match the argument list '(const boost::tuples::tuple<T0,T1>, const MyTuple)'
with
[
T0=std::string,
T1=std::string
]
d:\xyz\...\vector.h(111) : while compiling class template member function 'int Vector<T>::index(const T &) const'
with
[
T=MyTuple
]
d:\xyz\...\MyTuple_wrap.cxx(17731) : see reference to class template instantiation 'Vector<T>' being compiled
with
[
T=MyTuple
]
誰もが、私はこの問題を解決するために何をすべきかを教えてもらえますか?
あなたのインターフェイスファイルにはどのようなものが見えますか? – Flexo
jniと直接インタフェースするのではなく、swigを使用する理由はありますか? – ylabidi
私のオリジナルの質問にコメントできますか?それは私からの答えを得るという点で賞金よりも効果的です:) – Flexo