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

Вниз

Переменные   Найти похожие ветки 

 
A JI E LLI A   (2003-11-30 13:22) [0]

Как и где обьявить переменные, чтобы они сохранялись и переходили в другие процедуры?


 
Nikolay M. ©   (2003-11-30 13:27) [1]

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


> переходили в другие процедуры

Это как? :?)
"Процедура SaveToFile! Переход на процедуру UpdateProperty! Уважаемые переменные, при выходе из процедуры не забывайте свои значения! Двери закрываются, следующая процедура RunApplication!"
:?)


 
hooky-mars   (2003-11-30 13:39) [2]


> Nikolay M. © (30.11.03 13:27) [1]
> Переменные должны быть только глобальными и должны быть
> видны во всех модулях. Локальные переменные - это зло.


Это вы вообще про все переменные или только про те которые используются как минимум в двух функциях?
А если всетаки все, то неслишком ли много памяти это будет занимать?


 
mfender ©   (2003-11-30 13:42) [3]

To A JI E LLI A
Скажем так: избегайте глобальных переменных, где это возможно. Все лишнее храните в ini или реестре, или еще в какой-нибудь файле.
А объявляются глобальные переменные до implementation, олбычно в главном юните.


 
Nikolay M. ©   (2003-11-30 13:53) [4]


> hooky-mars (30.11.03 13:39) [2]

Лучше вообще всех. Кто знает, когда может потребоваться изменить значение переменной - может из другой процедуры, может из другого модуля. Кстати, тогда отпадает потребность в функциях и процедурах с параметрами, что улучшает читабельность кода.


 
hooky-mars   (2003-11-30 14:05) [5]


> Лучше вообще всех. Кто знает, когда может потребоваться
> изменить значение переменной - может из другой процедуры,
> может из другого модуля. Кстати, тогда отпадает потребность
> в функциях и процедурах с параметрами, что улучшает читабельность
> кода


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

....
var s:array [0..255] of char;
....
OemToChar(s1,s);
s1:=s;
...

Переменная s может использоватся всего один раз, но по вашему будет висеть в паяти до конца завершения программы, а таких переменных может быть много, вы понимаета как это может торможить процесс. Всё должно быть в меру!
Ктому же какраз изменение глобальнх перемнных очень трудно отследить.


 
Anatoly Podgoretsky ©   (2003-11-30 14:10) [6]

hooky-mars (30.11.03 13:39) [2]
Нет будет две двери


 
Nikolay M. ©   (2003-11-30 14:13) [7]


> hooky-mars

Тебя всегда так легко развести или у тебя в вск. с утра чуйство юмора отсутствует? :?)
Не сочти за что-то обидное :?)


 
hooky-mars   (2003-11-30 14:15) [8]


> Nikolay M. © (30.11.03 14:13) [7]

Нет охото, по дискутировать



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
1-36764
Алексей Глеб
2003-12-01 19:13
2003.12.12
Текущий видеорежим


14-36839
Василиск
2003-11-18 19:22
2003.12.12
Как написать батник на ребут компа?


1-36621
alexnmsk
2003-12-01 13:18
2003.12.12
Событие MyEvent


9-36496
Intell
2003-05-21 17:44
2003.12.12
Кто-нибудь умеет читать файлы от GameMaker`а?


1-36732
LittleGirly
2003-12-03 12:21
2003.12.12
Показ сообщения