私はBoost.Python
を使用してPythonで関数をラップしようとしていますが、__stdcall
を使用すると問題に直面しています。ここでは例です:Boost.Pythonで__stdcallの例をコンパイルできません
#define BOOST_PYTHON_STATIC_LIB
#define BOOST_PYTHON_ENABLE_STDCALL
#include <boost/python.hpp>
#include <boost/python/signature.hpp>
void __stdcall f(void)
{
return;
}
using namespace boost::python;
BOOST_PYTHON_MODULE(MyPyDLL)
{
def("func", f);
}
私は100以上の同様のエラーを取得しますが、最初の2であるコンパイルしようとすると:
エラーC2780: 「ブースト:: MPL :: vector10 :: T0、T1、T2、T3、T4、T4、T5、T6、T7、T0、T1、T2、T3、T4、T0、T1、T2、T3、T4、T0、T1、T2、T3、T4) 、T5、T6、T7)const、Target *) ':2つの引数を必要とする - 1 C:\ boost \ boost_1_62_0_python \ boost \ python \ make_function.hpp 104
エラーC2780: 'boost :: mpl :: vector10 :: type &、T0、T1、T2、T3、T4、T5、T6、T7> boost :: python :: detail :: get_signature(RT __thiscall ClassT :: * )(T0、T1、T2、T3、T4、T5、T6、T7)揮発性const、ターゲット*) ':期待値2 引数 - 1提供 C:\ boost \ boost_1_62_0_python \ boost \ python \ make_function.hppあなたは、私がthis page:
に記載されている
BOOST_PYTHON_ENABLE_STDCALL
を定義するために使用しますが、問題はsのまま見ることができるように104
それを定義してもしなくてもよい。
私は間違っていると誰が知っていますか?