c++ - 在类中访问枚举时出错

标签 c++ enums

我正在使用 CI2CV face library我在这一行有一个编译错误:

int t = IOBinary::PAW;

错误信息是:

'IOBinary::PAW' is ambiguous ' Candidates are: '

这是类 IOBinary 定义

 class IOBinary : public IO{
  public:

    enum{PDM3D= IO::DUMMY_LAST_DONT_USE+1,PAW,PATCH};

    static void ReadMat(std::ifstream& s,cv::Mat &M);
    static void WriteMat(std::ofstream& s,cv::Mat &M);

    static std::vector<cv::Mat> LoadMatList(const char* fname);


  };

这是类 IO 声明:

class IO{
  public:
    enum{PDM3D = 0,PAW,PATCH,MPATCH,CLM,FDET,FCHECK,MFCHECK,TRACKER,TPS,AAM_POIC,PDM2D,AAM_POIC_F,SINIT,LINPATCH,CLP,CLD,TRACKER4,NONLINPATCH,MIXPATCH,CLM3,CLMix,PRA,ATM_PO,LBPHISTPATCH,FACEPREDICTORPRA,FACEPREDICTORKSMOOTH,MYFACETRACKER,MYFACETRACKERPARAMS,REGOCHECK,MVREGOCHECK,SHAPEPREDICTORLIST, SHAPEPREDICTOR, SHAPEEXPMAP, 
     DUMMY_LAST_DONT_USE};
  };

我该怎么做才能解决这个问题?对不起,如果这个问题太琐碎了。

EDIT 这是错误信息 Error Message

最佳答案

我正在使用 eclipse。
我刚刚清理了项目并重新启动了 Eclipse,现在一切正常。
我为在尝试之前问这个问题感到羞愧(捂脸)

关于c++ - 在类中访问枚举时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22821531/

相关文章:

C# 或 VB.NET - 迭代所有公共(public)枚举

c++ - 向字符串添加字符

c++ - 防止在复制构造函数中切片

c++ - 如何使用gnu autotool构建qt项目

c# - 为什么 switch for enum 接受隐式转换为 0 但不接受任何其他整数?

Java - 将字符串映射到带有枚举的接口(interface)的实现?

c++ - 如何在 tic tac toe 游戏中检查 2 维数组的赢家

android - 无法链接 libSTLport_shared,即使它存在...?

json - 使用对象属性键作为 JSON 模式中的枚举

c# - 如何获取已用特定属性修饰的枚举成员列表