Мне нужно построить массив NumPy в C ++ программе
bp::list py_points;
// some code ....
и в какой-то части кода мне нужно конвертировать py_points к типу PyObject * для оценки модуля Python
PyObject * point_array, * numpy, * ndarray;
numpy = PyImport_ImportModuleNoBlock("numpy");
ndarray = PyObject_GetAttrString(numpy, "array");
point_array = PyEval_CallObject(ndarray,bp::extract<PyObject *>(py_points)); //error!
ошибка в этой части
bp::extract<PyObject *>(py_points)
Как правильно преобразовать объект Boost Python в PyObject?
большое спасибо!
Вы не можете извлечь PyObject из boost :: python :: object. Класс объекта имеет член ptr (), который возвращает нижележащий PyObject.
Других решений пока нет …