Forum.iFiction.Ru

iFiction.Ru · ifHub · FAQ · IFWiki · QSP · URQ · INSTEAD · AXMA

форум об interactive fiction, текстовых приключенческих играх и всём таком...

Вы не зашли.

0    0    #1
31.08.2010 10:34

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

"Грязный" переход из функции в локацию

Насколько всё плохо будет, если, вызвав определённую функцию (func 'Проверка'), я, минуя возврат из этой функции, сразу перескочу на нужную мне локацию?

Код:

#Начало
  *NL 'Результат'+func('Проверка',0)
  *NL 'Результат'+func('Проверка',1)
-

#Проверка
  Result=0
  if ARGS[0]=1: GT 'Конец'
  Result=1
-

#Конец
  *NL 'Конец'
-

Останутся ли "хвосты" в виде выделенных ARGS или типа того? (кстати, это будет как называться? "memory leaks"?)

Вопрос практический. С теориями и рассуждениями в стиле "GOTO — зло" — сюда: Великий и могучий Гоуту Неубиваемый.

Неактивен

0    0    #2
31.08.2010 13:57

HzD_Byte
Модератор (+1, -1)
Откуда: Далеко
Зарегистрирован: 15.04.2006
Сообщений: 271
Вебсайт

Я люблю людей

http://qsp.su

Re: "Грязный" переход из функции в локацию

Такие варианты предусмотрены - никаких мемликов не будет.

Минусы здесь только в ухудшении понимания работы и, возможно, усложнение отладки smile

Неактивен

0    0    #3
31.08.2010 14:04

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: "Грязный" переход из функции в локацию

HzD_Byte написал:

Такие варианты предусмотрены - никаких мемликов не будет.
Минусы здесь только в ухудшении понимания работы и, возможно, усложнение отладки

А в какой момент, например, накопленные ARGS сбрасываются? Если подобный трюк используется снова и снова в процессе игры?

Неактивен

0    0    #4
31.08.2010 14:17

HzD_Byte
Модератор (+1, -1)
Откуда: Далеко
Зарегистрирован: 15.04.2006
Сообщений: 271
Вебсайт

Я люблю людей

http://qsp.su

Re: "Грязный" переход из функции в локацию

Они при сворачивании стека вызовов сбросятся smile Технически, ничего страшного, если это будет использоваться часто - всё очистится.

Неактивен

Powered by PunBB
© copyright 2001–2024 iFiction.Ru