Могу ли я добавить два значения перечисления без приведения? Добавить к значению произвольную константу или вычесть ее?
Или enum гарантирует, что значение этого типа всегда является одним из определенных значений перечисления или их битовой маской?
Код: Выделить всё
class ... {...
enum WeekDays : byte { Sun = 1, Mon = 2, Tue = 3, /* and so on*/ Sat = 7 };
public static bool IsWeekend (WeekDays _d) {
/// Can I be sure here that _d has value from 1..7? May it be any of 0..255?
}
Википедия сообщает нам, мой образец также допускает _d - 1 или WeekDays.Tue - WeekDays.Mon, что может быть полезно для строго упорядоченных последовательных перечислений, но я не могу найти какую-либо стандартную ссылку, не могли бы вы указать мне?
Подробнее здесь: https://stackoverflow.com/questions/978 ... num-values