Я хоть убей не могу вспомнить, как устанавливать, удалять, переключать или тестировать бит в битовом поле. Либо я не уверен, либо путаю их, потому что они мне редко нужны. Поэтому было бы неплохо иметь «шпаргалку по битам».
Я хоть убей не могу вспомнить, как устанавливать, удалять, переключать или тестировать бит в битовом поле. Либо я не уверен, либо путаю их, потому что они мне редко нужны. Поэтому было бы неплохо иметь «шпаргалку по битам».
Например:
[code]flags = flags | FlagsEnum.Bit4; // Set bit 4. [/code]
или
[code]if ((flags & FlagsEnum.Bit4)) == FlagsEnum.Bit4) // Is there a less verbose way? [/code]
Можете ли вы привести примеры всех других распространенных операций, желательно в синтаксисе C#, с использованием перечисления [Flags]?
Для жизни я не могу вспомнить, как установить, удалять, переключить или немного протестировать в битфилде. Либо я не уверен, либо я смешиваю их, потому что мне это редко нужно. Таким образом, «бит-шить» было бы неплохо иметь.
Lua 5.1 пока не поддерживает побитовые операторы. Среда Lua, которую я использую, ограничена и предоставляет библиотеку bit32, которая позволяет выполнять побитовые операции с 32-битными числами.
Проблема в том, что я пытаюсь перенести алгоритм,...