Inheritance cython遗传

Inheritance cython遗传,inheritance,cython,Inheritance,Cython,我有一个a.pxd(只声明函数)和一个.pyx,其中只包含一个包含所有函数体的类a 而我有从A继承的B 对于B,我有带一些函数的B.pxd B.pyx 我现在想知道如何告诉B.pyx将ricognise A作为类型名 我所做的是: B.pyx 但它告诉我:A不是类型名 如果我只在一个file.pyx中执行此操作,那么它可以正常工作,但在使用files.pxd时不会出现问题。使用 来自cimport Aclass的 cdef类B类(Aclass): # ... 或 CIMA端口 cdef类B类(

我有一个a.pxd(只声明函数)和一个.pyx,其中只包含一个包含所有函数体的类a

而我有从A继承的B

对于B,我有带一些函数的B.pxd

B.pyx

我现在想知道如何告诉B.pyx将ricognise A作为类型名

我所做的是:

B.pyx

但它告诉我:A不是类型名

如果我只在一个file.pyx中执行此操作,那么它可以正常工作,但在使用files.pxd时不会出现问题。

使用

来自cimport Aclass的

cdef类B类(Aclass):
# ...

CIMA端口
cdef类B类(A.Aclass):
# ...

请注意,
Aclass
必须是
cdef
'fed类,Cython不能从Python类继承。

当我执行cimport A时,这意味着我正在导入A.pxd,对吗?参数Bclass(A.Aclass)不再给出错误,但当我将Btype转换为Atype时,它会说:不是类型标识符。当然,在a.pxd中定义的是类似于ctypedef结构的,我应该特别导入什么吗?什么是
castinA
?使用
myBclassInstance
代替,然后请将问题标记为已回答。我很高兴能帮助你。:)
class Bclass(A):
    #all the funcions body
cimport A
import A
from A import Aclass
cdef Bclass(Aclass):
   #body