Главная страница
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.48 MB
Время: 0.025 c
6-1099557535
AngelOKES
2004-11-04 11:38
2005.01.23
Socket и отправка файла в обе стороны


4-1101956312
Maep
2004-12-02 05:58
2005.01.23
Хранение файлов в ресурсах, как? (C++ Builder)


14-1103271191
by
2004-12-17 11:13
2005.01.23
Кто будет следующим президентом России?


9-1097696674
rydmi
2004-10-13 23:44
2005.01.23
Вращение спрайтов


14-1105031438
Кудесник
2005-01-06 20:10
2005.01.23
Вот вспомнил рекламу Эльдорадо... Были ли приценденты?