cython:C++ 方法声明中的 const 和 except
Posted
技术标签:
【中文标题】cython:C++ 方法声明中的 const 和 except【英文标题】:cython: both const and except in C++ method declaration 【发布时间】:2014-11-13 08:23:38 【问题描述】:我的代码是:
cdef extern from "mylib.h":
cdef cppclass MyClass:
MyClass(const char *data) except +
# and I also need except + for myMethod
int myMethod(size_t len, char *data) const
我的方法需要const
和except +
,但我不能。我试图在空格之后写它,在逗号之后,将两个声明都放在括号中——但是得到了不同类型的 cyntax 错误。文档没有给出关于多个注释的提示...
使用了来自 Ubuntu Trusty 的 cython 0.20.1。
【问题讨论】:
【参考方案1】:作为参考,OP 似乎从 Cython mailing list 得到的答案基本上是目前不可能,但在实践中可能无关紧要,因为可以放弃 const
以支持except +
不影响编译能力。
【讨论】:
感谢您添加答案:) 但是,如果您将 C++ 部分放在单独的共享库中,它似乎会有所不同。然后找不到所需的符号。以上是关于cython:C++ 方法声明中的 const 和 except的主要内容,如果未能解决你的问题,请参考以下文章
用函数指针包装 C++ 代码作为 cython 中的模板参数