我从C标题中得到以下代码:
typedef struct
{ /* struct description */
int type; /* variable purpose: */
#define OPTION_A 1 /* option A */
#define OPTION_B 2 /* option B */
#define OPTION_C 3 /* option C */
} struct_name;
作为Cython,在pxd文件中,我想我应该把它写成(参见reference):
ctypedef struct struct_name: # struct description
cdef enum purpose:
OPTION_A = 1 # option A
OPTION_B = 2 # option B
OPTION_C = 3 # option C
enum purpose type # variable purpose
但是,在C中,我想我也可以使用无名enum
编写相同的代码
typedef struct
{ /* struct description */
enum {
OPTION_A 1 /* option A */
OPTION_B 2 /* option B */
OPTION_C 3 /* option C */
} type; /* variable purpose: */
} struct_name;
我的问题是我是否也可以在Cython中使用这种类型的模式,这样我就可以避免引入名为enum
的{{1}}。