Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.23;
Скачать: CL | DM;

Вниз

Как лучше?   Найти похожие ветки 

 
Igor_thief   (2005-01-11 20:46) [0]

Насколько эфективно делать вот-так:
procedure Test;
var
 a ....;
 procedure Inside;
 begin
  ...
  a := ...
  ...
 end;
begin
 ...
 Inside;
 ...
end;

Или лучше сделать переменную А глобальной и вынести процедуру Inside (процедур внутри, а также переменных может быть много).


 
vecna ©   (2005-01-11 21:27) [1]

Переменная A еще где-нить используется? Нет? Тогда нафик ее делать глобальной. Лучше сделать

procedure Inside(var a...)

и не париться с уровнем видимости =)


 
Palladin ©   (2005-01-11 21:45) [2]

С глобальной переменной быстрее выполнятся будет :) Особенно это видно на стомиллионной итерации... отставание аж на 2 десятых секунды...


 
Igor_thief   (2005-01-12 12:11) [3]

Palladin ©   (11.01.05 21:45) [2]
:)
vecna ©   (11.01.05 21:27) [1]
Я провтыкал, А используется еще и в основной (Test) процедуре. Да и в примере я указал только переменную А (для простоты), но в реальной ситуации переменных больше.


 
Sandman25 ©   (2005-01-12 14:15) [4]

Если процедура относится только к другой процедуре и не несет самостоятельного смысла, я ее делаю внутренней.
Если несет, делаю отдельной процедурой с передачей параметров в виде параметра типа record или вообще нетипизированного.
Глобальные переменные не поддаются оптимизации, увеличивают требования к памяти, усложняют понимание и модификацию кода (их описание не находится возле того места, где они используются).


 
Igor_thief   (2005-01-12 16:02) [5]

Sandman25 ©   (12.01.05 14:15) [4]
Большой сенкс!



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

Текущий архив: 2005.01.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.044 c
1-1104981919
-[ HAWK ]-
2005-01-06 06:25
2005.01.23
как заморозить значение


6-1099486260
anton2v
2004-11-03 15:51
2005.01.23
Ограничение скорости соединения


3-1103183059
IgorV
2004-12-16 10:44
2005.01.23
Группировка в отчете


3-1103712079
andrew_p
2004-12-22 13:41
2005.01.23
Запуск программы с ADO на компьютере без MSAccess


8-1097458381
Tatyana
2004-10-11 05:33
2005.01.23
ресурсы видеокарты