Это правильный способ установить биты перечисления?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Это правильный способ установить биты перечисления?

Сообщение Anonymous »


У меня есть побитовое перечисление для сохранения двух настроек состояния некоторого класса. Я пытаюсь разработать простую функцию для включения или выключения бита. Это правильный и быстрый способ сделать это?
enum myEnum { eeNull = 0, ee1 = 1, ee2 = 2, ee4 = 4, ee8 = 8 }; шаблон встроенный T &SetBit(T &eValue, const int iBit, const bool bState) { return eValue = (T) ((eValue| (iBit * bState)) & ~(iBit * !bState)); } интервал основной() { myEnum е; еЕ = eeNull; SetBit(eE, ee2, true); SetBit(eE, ee1, true); SetBit(eE, ee2, false); вернуть 0; }
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»