当我声明一个返回 double 的 cdef 函数时,我会写 cdef double method_name(...)
。如果它没有返回任何东西并且我只是将它省略给 cdef method_name(...)
然后 cython --annotate 将其标记为黄色。如何声明方法/函数不返回任何内容?cdef void method_name(...)
因段错误而崩溃cdef None method_name(...)
-> 'None' is not a type identifier
最佳答案
--annotate
将其标记为黄色,因为如果省略返回类型注释 ( Cython Language Basics ),cython 会假定返回类型为 python 对象。
指定 void 作为返回类型对我有用。很多官方示例中也用到了它,只要确保不返回任何内容即可。
关于cython:如何声明一个没有返回值的 cdef 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33844421/