编译器错误 C3063
运算符“operator”:所有操作数必须具有相同的枚举类型
在枚举器上使用运算符时,两个操作数都必须是枚举类型。 有关详细信息,请参阅如何:在 C++/CLI 中定义和使用枚举。
示例
以下示例生成 C3063,并演示如何修复此错误:
// C3063.cpp
// compile with: /clr
enum class E { a, b } e, mask;
int main() {
if ( ( e & mask ) != 0 ) ; // C3063 no operator!= (E, int)
if ( ( e & mask ) != E() ) // OK
;
}