Вход на сайт
C# - У чего приоритет больше - у операторов или паттернов?
1042 просмотров
Перейти к просмотру всей ветки
Последний раз изменено 21.11.22 15:24 (alex445)
Например, такое выражение
if (enumValue == MyEnum.One || enumValue == MyEnum.Two || enumValue == MyEnum.Three)
можно записать так - гораздо короче и понятнее
if (enumValue is MyEnum.One or MyEnum.Two or MyEnum.Three)
А что если в if проверяется ещё что-то? Например
if (obj != null || enumValue == MyEnum.One || enumValue == MyEnum.Two || enumValue == MyEnum.Three)
Тогда можно записать
if (obj != null || enumValue is MyEnum.One or MyEnum.Two or MyEnum.Three)
Но тогда непонятно, что вперёд выполняется. Где в спецификации языка или в МСДН написано, что операторы имеют бОльший приоритет, чем паттерны?
Или ваше предложение, как написать понятнее, но чтобы не портянку как в третьей строчке.