ПОНЯТНО О Visual Basic NET (том 2)

Цикл с GoTo. Метки


Посмотрим, как осуществить цикл в VB. Предположим, мы хотим, чтобы компьютер бесконечно повторял выполнение следующего фрагмента:

        Debug.Write("Это ")

        Debug.Write("тело ")

        Debug.WriteLine("цикла")

в результате чего в окне Output мы бы увидели:

Это тело цикла

Это тело цикла

Это тело цикла

Это тело цикла

. . . . . . . .

Если бы операторы VB можно было писать по-русски, то для достижения нашей цели было бы естественно воспользоваться такой конструкцией:

метка m1:        Debug.Write("Это ")

                        

Debug.Write("тело ")

                         Debug.WriteLine("цикла")

                         иди к оператору, помеченному меткой m1

Здесь мы видим новый для нас «оператор» ИДИ, который выполняется после оператора Debug.WriteLine("цикла") и единственная работа которого заключается в том, чтобы заставить компьютер перескочить к выполнению оператора Debug.Write( "Это "), помеченного меткой m1.

А вот как этот фрагмент выглядит реально на VB (не запускайте его пока):

m1:  Debug.Write("Это ")

        Debug.Write("тело ")

        Debug.WriteLine("цикла")

        GoTo m1

Здесь GoTo m1оператор безусловного перехода, переводится «иди к»,   m1: –  метка. Метка - это произвольное имя или произвольное не слишком большое целое положительное число. Метка перед оператором должна заканчиваться двоеточием.

Оператор GoTo можно писать в любых местах процедуры и метку можно ставить перед любым оператором процедуры, заставляя компьютер таким образом перескакивать внутри процедуры откуда угодно куда угодно. Правда, в сложных процедурах и внутри сложных операторов эта свобода перескакивания существенно ограничивается, так что я не советую вам врываться снаружи внутрь вложенных операторов, а вот изнутри наружу – пожалуйста. Между процедурами скакать нельзя.

А теперь запустите эту программу, но только в пошаговом режиме. Посмотрите, как заполняется окно Output. Чтобы оно заполнялось быстрее, нажмите клавишу F11 и не отпускайте.

Группа операторов, выполняющихся многократно, называется телом цикла. У нас это все 4 оператора.



Содержание раздела