Я пытаюсь определить внешний конструктор при переносе класса на python, с помощью make_constructor абсолютно не удается. Когда я пытаюсь:
#include <boost/python/numpy.hpp>
using boost::python;
class foo
{
int i;
public:
foo(int i) : i(i){}
};
foo foo_create(int i){return foo(i);}
BOOST_PYTHON_MODULE(bar)
{
class_<foo>("foo")
.def("__init__", make_constructor(&foo_create));
}
Я получаю следующую ошибку
error: no type named ‘element_type’ in ‘class foo’
Я пытался использовать noinit и init () с тем же результатом. Что я делаю не так?