【发布时间】:2022-01-22 19:18:18
【问题描述】:
我有一堆 Cython 文件,它们以复杂的依赖顺序导入其他文件。问题是,有些 cimport 在编译时会出现这个错误:'Blahblah' redeclarared
这个问题在 C 中用包含保护的非常简单的方法解决了:
#ifndef XXX_HH
#define XXX_HH
...
#endif
我在 Cython 中找不到这样的包含保护类似功能,一般来说有什么解决方法吗? (非临时)
【问题讨论】:
-
它说'Cython 中没有直接等效的 C #ifdef/#ifndef'
-
但是对于第二个 cimport,DEF 还是一样的
-
minimal reproducible example。没有等同于包括警卫。如果您想要一个有用的答案,您可能需要展示一个您实际尝试解决的简单示例
-
在 C 中,对于他们狡猾的文本包含模型来说,这可以说是一个糟糕的解决方法。所以我不相信 Cython 应该尝试用 1970 年代的 C 方式解决问题。
标签: compilation header include cython