Форум: "Основная";
Текущий архив: 2003.12.12;
Скачать: [xml.tar.bz2];
ВнизПеременные Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.008 c