Enum и битовая маска - C#
Формулировка задачи:
Здравствуйте.
У меня есть перечисление Enum (индексы в шестнадцатеричной системе):
В нужном мне месте я записываю значение перечисления в определённое поле. Выглядит это так:
Но проблема в том, что мне нужно записывать в это поле сразу несколько значение. Собственно, мне для этого и посоветовали использовать маску, только не объяснили до конца как =/ Вроде как тут должны значения складываться, потом из этой суммы можно будет легко получить их назад или что-то в этом духе... Знаю, что пишу мягко говоря не точно и не конкретно. Но может кого-то знающего это натолкнёт на правильную мысль.
Так как можно в одно поле записать несколько значений перечисления, чтобы потом их можно было легко получить назад?
[Flags]
public enum TICKETS_STATUSES
{
InitialReception = 0,
RepeatedReception = 0x1,
PrimaryReception1 = 0x2,
PrimaryReception2 = 0x4,
PrimaryReception3 = 0x8,
PrimaryReception4 = 0x10,
PrimaryReception5 =0x20,
PrimaryReception6 = 0x40,
PrimaryReception7 = 0x80
}dtd.IsReserved = (byte)TICKETS_STATUSES.PrimaryReception3 //dtn - переменная класса //IsReserved - поле
Решение задачи: «Enum и битовая маска»
textual
Листинг программы
[Flags] public enum TICKETS_STATUSES : byte