我正在使用 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 这是错误信息
最佳答案
我正在使用 eclipse。
我刚刚清理了项目并重新启动了 Eclipse,现在一切正常。
我为在尝试之前问这个问题感到羞愧(捂脸)
关于c++ - 在类中访问枚举时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22821531/