Вниз
Скачать: CL | DM;

Область видимости и время жизни при рекурсии.   Найти похожие ветки 

← →
John Doe ©   (2005-11-07 09:31) [0]

Вот код:

procedure MyProc(n);
var i: Integer;

begin

 if n<>2 then MyProc(n-1);

 for i:=1 to n-1 do
   begin
     .....
     .....
     if n<>2 then MyProc(n-1) else Exit;
     ....
     ....
   end;

end;

У меня там в цикле - рекурсия,и появился вопрос...
А запоминает ли прога значение i,для каждой вложенной процедуры,либо значение i перекрывается соответствующим значением,при следующем шаге рекурсии.
То есть значение i для MyProc(n),не будет ли затерто,при вызове MyProc(n-1) внутри MyProc(n)?

Учитывая что переменная i обьявлена не глобальной,а локальной.


← →
Anatoly Podgoretsky ©   (2005-11-07 09:36) [1]

Область видимости ограничивается данной процедурой, это локальная переменная, сколько раз войдешь в данную функцию, столько локальных переменных и получишь.


← →
John Doe ©   (2005-11-07 10:52) [2]

Ясно.
Спасибо.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.022 c
14-1131363466
DD
2005-11-07 14:37
2005.11.27
Компоненты, раб-щие с арх. RAR и ZIP


6-1124370571
Andy K
2005-08-18 17:09
2005.11.27
INDY, перекодировка KOI8-R в cp1251


14-1131127261
Зм1й
2005-11-04 21:01
2005.11.27
Share-Ware игры


14-1131034317
romas_first
2005-11-03 19:11
2005.11.27
Нужен компонент-потомок DBGridа


14-1131027047
Viktop
2005-11-03 17:10
2005.11.27
Установка DevExpress




   Наверх