Главная страница
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.053 c
3-1103267528
cad2206
2004-12-17 10:12
2005.01.23
Переход к записи по щелчку мыши в DBGrid e


3-1103266113
Nexel
2004-12-17 09:48
2005.01.23
non-blob column in table required to perform operation


1-1105430034
JohnS
2005-01-11 10:53
2005.01.23
Как заглушить вывод ошибки на экран


1-1105018562
Лёха
2005-01-06 16:36
2005.01.23
Окно


14-1105109952
Василий
2005-01-07 17:59
2005.01.23
нужен человек, хотя бы средне знающий Delphi