Question.7
A developer tries to combine enum class values as bitwise flags:
enum class
enum class Permission : uint8_t { READ = 0x01, WRITE = 0x02, EXEC = 0x04 }; Permission p = Permission::READ | Permission::WRITE;
Will this compile?
Select Answer
Yes -- bitwise OR works on any integer-like type
No -- enum class does not support bitwise operators by default; you must overload operator| for the enum
operator|
Yes -- but only with uint8_t underlying type
uint8_t
No -- enum class cannot use hex values