Boost.python无效指针函数

2024-10-05 14:22:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个函数,它创建了一个对象,这个对象必须传递给代码中的其他类,我试图让python创建这个对象,这样我就可以将它作为其他函数中的一个参数传递给python,我也将在python中公开它

Encoder *mEncode;
Decoder *mDecode;

void *Create()
{
  Obj *obj = new Obj();
  obj->mEncode = 0;
  obj->mDecode = 0;
  return (void*)obj;
}

声明对象,然后使用它们

//init lib
void* mObj;

mObj = Create();

//pass it to the function
void encode(int mode, void *mObj);

我试图在Boost.Python中重新创建它,我开始编写,但完全失败了,这有可能吗

#include "Lib_api.h"

#include <boost/python.hpp>

BOOST_PYTHON_MODULE(wrapper)
{
  using namespace boost::python;
  Py_Initialize();

  def("GetVersion", GetVersion);

  //Possible via python?
  mCore = Create()

}

Tags: 对象函数代码objencoderincludecreateboost