【发布时间】:2017-09-13 10:10:30
【问题描述】:
我正在尝试重载枚举类的 & 运算符,但出现此编译器错误:错误:'operator&=' 不匹配(操作数类型为 'int' 和 'Numbers')。对此有何想法?
#include <iostream>
using namespace std;
enum class Numbers : int
{
zero = 0,
one = 0x01,
two = 0x02
};
inline int operator &(int a, Numbers b)
{
return ((a) & static_cast<int>(b));
}
int main() {
int a=1;
a&=Numbers::one;
cout << a ;
return 0;
}
【问题讨论】:
标签: c++ enums operator-overloading