建议您为cython模块使用其他名称,例如cFoo,以避免名称冲突问题:
from distutils.core import setupfrom Cython.Build import cythonizesetup(ext_modules = cythonize("cFoo.pyx", # our Cython sourcesources=["Foo.cpp"], # additional source file(s)language="c++", # generate C++ pre ))要定义C ++类,请使用’cppclass’关键字,如下所示:
cdef extern from "Foo.h": cdef cppclass Foo: Foo() double alfa int beta
然后,您应该可以像下面这样访问您的课程:
cdef Foo *foo = new Foo()foo.beta = 42



