Тема: GOTO
Показать сообщение отдельно
Старый 23.04.2009, 20:28   #12
zheland
Разработчик
 
Регистрация: 18.10.2007
Сообщений: 349
Написано 64 полезных сообщений
(для 95 пользователей)
Ответ: GOTO

Сообщение от G.A.D Посмотреть сообщение
как SBJOker написал это скачок по памяти
а ак известно скачки по памяти замедляют программу на доли секунду(милисекунду)=>если программа и так лагает то лучше воздержаться от ГОТО,а если нормально и надо обработать от 5 до 15(-20,(кол-во строк зависит:смотря какие команды и используете ли вы функции свои) строк,то можно спокойно ставить.Опять же если намудрёные свои функции то лучше воздержаться от ГОТО
Разберём примерно что получает процессор при условии и цикле

if [...1]
[...2]
end if
Заменяется на:
сравнить значения [...1]
если равно(+не больше, +не меньше,...
(условия инвертируются при компиляции)) goto _endif
[...2]
_endif:

for a = ? to ? step ?
[...2]
next
Заменяется на:
a=?
b=?
c=?
_for:
[...2]
a=a+c
сравнить значения a и b, если меньше перейти на _for

Так-что и функции, и методы, и условия, и циклы,
это не только скачки, но и дополнительные операции процессора.

Но я согласен что goto не всегда нужно.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
tormoz (23.04.2009)