枚举在同一行上的重新声明错误

时间:2013-07-30 23:28:51

标签: c visual-c++ enums mex redeclaration

我正在尝试为设备创建一个Matlab接口,其中制造商提供了用于MS Visual C ++编写的SDK。我在我的C文件(包含mexfunction)中包含了一个包含枚举的SDK标题,如下所示:

typedef enum {
 GROUP_SYSTEM_COMMAND = 0,
 GROUP_SLM_CURRENT,  // 1
 GROUP_SLM_HISTORY,  // 2
 GROUP_SLM_OVERALL,  // 3
 GROUP_STAT_HISTORY, // 4
 GROUP_STAT_OVERALL, // 5
 GROUP_OBA11,        // 6
 GROUP_OBA13,        // 7
 GROUP_DOSE_1,       // 8
 GROUP_DOSE_2,       // 9
 GROUP_EVENT_1,      // 10
 .......etc

在matlab中编译C文件以生成mex文件时,我会在枚举的每个元素中得到几个错误,如下所示:

错误\ LxT \ useLxt.c:\ LxT \ LxT831.h:713重新声明先前在\ LxT \ LxT831.h声明的`GROUP_DOSE_1'713

错误\ LxT \ useLxt.c:\ LxT \ LxT831.h:714重新声明先前在\ LxT \ LxT831.h声明的`GROUP_DOSE_2'714 ....

令人困惑的部分是重新声明是在同一条线上。另外需要注意的是,这是cpp代码,而matlab正在使用lcc c编译器。任何提示/建议?

0 个答案:

没有答案