На данный вопрос уже ответили:
В определении перечисления используется символ <<
:
public enum Lights
{
NormalLights = 1 << 0,
Highbeams = 1 << 10,
}
Что он означает и для чего он используется?
Оператор сдвига влево (<<) сдвигает первый операнд влево на число битов, задаваемое вторым операндом. Второй операнд должен иметь тип int или тип, для которого существует предварительно определенное неявное числовое преобразование в int. (Подробнее как советовал @Grundy почитайте тут, определение оттуда)
Примеры для понимания сути оператора:
Console.WriteLine("1 << 1 = " + (1 << 1));
Console.WriteLine("1 << 2 = " + (1 << 2));
Console.WriteLine("1 << 3 = " + (1 << 3));
В ответ даст следующее:
1 << 1 = 2
1 << 2 = 4
1 << 3 = 8
Что же такое сдвиг:
При применении оператора << Вы сдвигаете все число влево на заданное число бит, т.е.
В Вашем случае Вы сдвигаете
public enum Lights
{
NormalLights = 1 << 0, // т.е. 1 сдвигаем на 0
Highbeams = 1 << 10, // т.е. 1 сдвигаем на 10
}
итого это равносильно
public enum Lights
{
NormalLights = 1
Highbeams = 1024
}
Хотя в целом я не понимаю логики заведения enum таким способом. Компилятор поставит уже вычисленные значения.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Есть метод, который должен получать текст, и накладывать на него стили
Присоединил к солюшену проект WPF, однако выдает такую ошибку при компиляции:
Как мне создать тоже самое в C# в консоли? Мне нужен объект такого же типа - таблица, как в примере ниже и такая же сортировка - устойчивая: