1
我想用PyBind11来包装一个专门的数组类。但是,该数组有多种可用形式(每个plain-old-datatype一个)。代码如下所示:许多类型的PyBind11模板类
py::class_<Array2D<float>>(m, "Array2Dfloat", py::buffer_protocol(), py::dynamic_attr())
.def(py::init<>())
.def(py::init<Array2D<float>::xy_t,Array2D<float>::xy_t,float>())
.def("size", &Array2D<float>::size)
.def("width", &Array2D<float>::width)
.def("height", &Array2D<float>::height)
//...
//...
我想过告诉PyBind11这些类的唯一方法是通过使用一个非常大的宏重复上述每个POD。
有没有更好的方法来做到这一点?