Информация об изменениях

Сообщение enum class and if expression от 18.12.2019 13:05

Изменено 18.12.2019 13:06 удусекшл

enum class an if expression
Здравствуйте

Сделал я enum class и сделал для него bitwise операторы, чтобы использовать в качестве флагов. Теперь я хочу такой флаг проверить по & и сделать то или иное, в зависимости от того, установлен этот флаг или нет. Но компилятор мне не дает — он не знает как получить из этого enum булево выражение.

В принципе, можно сделать оператор преобразования в bool, но не может ли это повлечь какие-то сайд-эффекты в виде разложенных на ровном месте граблей автоматического кастинга куда не следует?

Как бы это правильно сделать?
enum class and if expression
Здравствуйте

Сделал я enum class и сделал для него bitwise операторы, чтобы использовать в качестве флагов. Теперь я хочу такой флаг проверить по & и сделать то или иное, в зависимости от того, установлен этот флаг или нет. Но компилятор мне не дает — он не знает как получить из этого enum булево выражение.

В принципе, можно сделать оператор преобразования в bool, но не может ли это повлечь какие-то сайд-эффекты в виде разложенных на ровном месте граблей автоматического кастинга куда не следует?

Как бы это правильно сделать?