Re[4]: enum class and if expression
От: rg45 СССР  
Дата: 19.12.19 10:17
Оценка:
Здравствуйте, удусекшл, Вы писали:

R>>Есть такое мнение. Но я бы не стал это воспринимать как истину в последней инстанции. Особенно с учетом всех требований стандарта. Многое указывает на то, что именно под такое использование подгонялись современные требования.


У>Хм, возможно. Но тогда почему не предоставлен механизм для использования в условных конструкциях?


Ну, не то чтобы совсем не предоставлен: перечисления можно использовать в switch, их можно сравнивать друг с другом. Для перечислений по-прежнему доступна zero-initialization: выражения Flags{} и Flags() конструируют "нулевой" объект перечисления, независимо от того, присутствует ли ноль в списке элементов. А значит, всегда есть возможность написать проверку: if (flags != Flags{}). Я думаю, explicit конверсию в bool просто прошляпили. И, рано или поздно, разберутся как следует и накажут кого попало, как говорится.
--
Отредактировано 19.12.2019 10:22 rg45 . Предыдущая версия . Еще …
Отредактировано 19.12.2019 10:21 rg45 . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.