我的c++头文件的某些部分:
virtual void OnFrontDisconnected(int nReason){};
我的.pxd文件的一些声明:
^{pr2}$关于我的.pyx文件代码:
cpdef void OnFrontDisconnected(self, int nReason) except +:
self._this_md_spi.OnFrontDisconnected(nReason)
但当我试图编译代码时,却遇到了一些错误:Cannot convert 'void' to Python object
Return with value in void function
我没有在代码中提供return
。在
我应该删除代码中的void
关键字吗?在
{{cd4>{cd2}不需要返回
但请注意,你有一个更大的潜在问题。通过写作
您已禁用所有正确的错误处理!
内部函数中的^ {CD5>}将把它的C++异常转换为Python异常。当Python异常被抛出到{{CD6}},<强> >这将找不到< /Stult>,因为它只寻找C++异常。你要么做:
^{pr2}$或者
或者
第三个原因是,不指定返回类型会给它一个Python返回类型,这是自动正确处理的。在
我打赌你没想到会有这么复杂;)。在
相关问题 更多 >
编程相关推荐