Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.039 c
3-1103290997
Sergio
2004-12-17 16:43
2005.01.23
перерисовка грида


3-1103439966
Black
2004-12-19 10:06
2005.01.23
Пользаватели в SQL Server 2000


14-1104470296
DelphiN!
2004-12-31 08:18
2005.01.23
Как узнать подключена ли в конкретный момент времени USB мышь


1-1105050080
Colonel
2005-01-07 01:21
2005.01.23
Фокус формы, события OnMouseEnter, Leave


1-1105284448
andruxa
2005-01-09 18:27
2005.01.23
Народ, кто как гасит подсказки сзданные THintWindow.create(self);





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский