КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Оператор goto. Старшинство операторов с дополнениями
Старшинство операторов с дополнениями Логические операторы присваивания Рассмотрим комбинацию выше изложенных операторов с оператором присваивания. Они во многом сходны с математическими операторами присваивания, рассматривавшимися в предыдущей главе (+ =, *= и т.д.). Логические операторы приведены в следующей таблице:
Эти операторы используются как с логическими, так и с численными значениями, точно так же, как и операторы &, | и ^. Обратите внимание, что при выполнении операторов &= и |= применяются операторы & и |, а не && и ||, что приводит к издержкам, характерным для этих более простых операторов. Для операторов побитового сдвига также существуют соответствующие операторы присваивания:
Таблица старшинства операторов:
Пришлось ввести в эту таблицу несколько новых уровней, зато теперь она точно определяет, каким образом следует вычислять выражения, например: varl = var2 <= 4 && var2 >= 2; в котором оператор && выполняется после операторов < = и >=. Здесь необходимо отметить тот факт, что совершенно не возбраняется использовать скобки с целью сделать выражения более понятными. Можно записать вышеприведенное выражение следующим образом: varl = (var2 <= 4) && (var2 >= 2); мы сумеем решить эту проблему, явно указав последовательность выполнения операций. С# позволяет помечать строки кода, а затем непосредственно переходить к их выполнению с помощью оператора goto. У этого оператора имеются свои преимущества и недостатки. Основное преимущество заключается в том, что это очень простой способ управлять очередностью выполнения кодов. Однако чрезмерное его использование может привести к трудному для понимания "лоскутному" коду, что является его главным недостатком. Для лучшего понимания давайте рассмотрим, каким образом может использоваться этот оператор. Оператор goto имеет вид: goto <имяМетки>; Метки задаются таким образом: <имяМетки>: В качестве примера разберем следующий код: int myInteger = 5; goto myLabel; myInteger +=10; myLabel: Console.WriteLine(“myInteger = {0}”, myInteger); Его выполнение осуществляется следующим образом: • Переменная myInteger объявляется как имеющая тип int и ей присваивается значение 5. • Оператор goto прерывает нормальный ход выполнения кода и передает управление на строку с меткой myLabel:. • Значение переменной myInteger выводится на консоль. Строка кода, выделенная в приведенной ниже программе серым цветом, никогда не будет выполняться: int myInteger = 5; goto myLabel; myInteger += 10; myLabel: Console.WriteLine(“myInteger = {0}”, myInteger); В самом деле, если вы попытаетесь использовать этот код в приложении, то обнаружите, что при попытке его откомпилировать появится предупреждение "Unreachable code detected" ("Обнаружен невыполняемый код") с номером соответствующей строки.
Дата добавления: 2015-04-29; Просмотров: 385; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |