Задать вопрос
mrjbom
@mrjbom

Как комбинировать несколько значений из одного enum?

Привет.

У меня есть функция, которая получает нажатую клавишу
KeysEnum pressedKeys;
...
keyPressEventHandler(KeysEnum key)
{
    //добавляем key в pressedKeys
}

Как мне лучше сохранять несколько нажатых клавиш?
Кажется для этой цели можно использовать битовые операции, но я не знаю точно ли это.
  • Вопрос задан
  • 248 просмотров
Подписаться 1 Простой Комментировать
Решение пользователя res2001 К ответам на вопрос (2)
@res2001
Developer, ex-admin
Битовые операции можно использовать только если ваш enum состоит из значений равных степеням двойки: 1, 2, 4, 8, ...
Если у вас произвольные значения в enum (1, 2, 3, 105, 888, ...) то битовые операции применять нельзя.
Если нужен какой-то универсальный вариант - сделайте массив значений.
Ответ написан
Комментировать