Показать сообщение отдельно
Старый 01.01.2006, 23:47   #27
Guest
 
Сообщений: n/a
GOTO в Блитце бывает полезна (очень редко) на коротких фрагментах программы. В одной из полных игровых программ, идущих в комплекте с полной версией Блитц3Д, она используется несколько раз и не ухудшает ни стиля, не читаемости программы. Другое дело, что современный принцип построения программм (в том числе и на ассемблере) - модульный, поэтому это GOTO и GOSUB может быть с трудом оправдано в пределах одного модуля, хотя любой алгоритм позволяет обойтись и без них.
Дополнительные потери времени при использовании функций, связанных с формированием кадра переменных на стеке и его использования, настолько несущественны, что не идут ни в какое сравнение с потерями времени на отладку и модификацию программы при отсутствии модульной структуры.
Разумеется, речь идет не о тесте на скорость, а о нормальной программе.
В таких программах использование GOTO и GOSUB означает только лишь некомпетентность программиста (я не имею в виду старые версии Бейсика, где просто не было полноценных функций).