Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.08.2009, 10:37   #1
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию Стек функций

Очередной вопрос на тему интерпретаторов .
В общем, я организовал стек вызов функций (то есть допускается и рекурсия). В данном стеке хранятся все данные функций. Однако, еще имеются статические переменные (те которые сохраняют свои значения при выходе из функции, до следующего вызова). Как быть с ними? При выходе из функции ее данные выталкиваются из стека и передается результат, передавать все статические переменные довольно-таки накладно (особенно, если учесть, что все переменные - строки).
Чуть не забыл, ситуация осложняется тем, что функция может управлять своим состоянием, она имеет право при помощи специальной команды читать данные функции из которой она вызвана.
То есть если имеется функция А, вызвавшая функцию Б, то функция Б может прочесть данные функции А (но не может их менять). Теперь представьте рекурсию, где А и Б есть одна и таже функция, где часть переменных различна, а часть совпадает (статические переменные общие на всю рекурсию).
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика

Последний раз редактировалось Utkin; 11.08.2009 в 10:55.
Utkin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Построение графиков функций С++ (методы аппроксимации функций) amdbodia Общие вопросы C/C++ 0 24.05.2009 15:28
Стек lucky Паскаль, Turbo Pascal, PascalABC.NET 2 12.05.2009 18:35
использование функций в качестве параметров других функций mono Помощь студентам 0 20.04.2009 18:25
стек в PM vladimir0108 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 08.01.2009 01:18
СТЕК KORT Фриланс 3 08.09.2008 23:38