我在将方法 args 放入我的班级时遇到问题:
class A {
public:
enum Mode {ModeA, ModeB, ModeC};
... // other methods, constructor etc
void setMode(Mode m) {
mMode = m;
}
private:
Mode mMode;
}
int main(int argc, char **argv) {
A a;
a.setMode(A::ModeA | A::ModeC );
return 0;
}
问题,我得到一个 C++ 编译器错误invalid vconversion from int to A::Mode
,我不明白,为什么我不能连接到枚举值?我需要在我的代码中连接值,所以解决这个问题的任何帮助都会非常好。