cdef class Y:
cdef double* _ptr
def __cinit__(self, double* ptr):
self._ptr = ptr
cdef class X:
cdef double* _ptr
def __cinit__(self):
# some magic with _ptr
self._y = Y(self._ptr)
无法转换double *
为Python
对象
为什么会这样?除了将整个X
对象传递给Y
并手动提取 _ptr 之外,还有更好的方法来解决这个问题吗?