我正在阅读cython文档,并对出现在以下代码中的_c_queue
和self._c_queue
感到困惑。类变量_c_queue
是否起任何作用?以下代码来自https://cython.readthedocs.io/en/latest/src/tutorial/clibraries.html
# distutils: sources = c-algorithms/src/queue.c
# distutils: include_dirs = c-algorithms/src/
cimport cqueue
cdef class Queue:
cdef cqueue.Queue* _c_queue
def __cinit__(self):
self._c_queue = cqueue.queue_new()
if self._c_queue is NULL:
raise MemoryError()
def __dealloc__(self):
if self._c_queue is not NULL:
cqueue.queue_free(self._c_queue)