Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Delphi: Общие вопросы > Глобальная переменная в "памяти программы" |
Автор: Nowichok 21.8.2009, 06:31 |
А возможно ли сделать переменную ГЛОБАЛЬНОЙ для всех форм, НЕ ВКЛЮЧАЯ изначальную форму во все остальные. Порой из формы нужна лишь одна переменная. Допустим, нужна переменная из Form1 А пропись в другой форме (form2) в разделе Uses form1 приводит (насколько помню) к тому, что весь код Form1 вставляется в form2. Да и неудобно это. А я всегда был за компактный код. Можно ли как-то вынести переменную в "общую память программы", чтобы всегда можно было получить доступ к ней ? Тогда было бы удобно обращаться к ней из любого места программы |
Автор: Мозгоносец 21.8.2009, 07:49 | ||
Вообще-то это делается и называется не так. Если нужны переменные, константы, типы, процедуры, которые должны быть доступны во всех модулях ("юнитах") и, соответственно, формах, то заводится отдельный юнит, в который и помещаются нужные переменные и пр. Затем этот юнит добавляется в секцию uses везде, где нужен доступ. Другого приемлимого способа нет. Но с глобальными переменными нужно быть осторожным. По возможности нужно стараться спроектировать так программу, чтобы необходимости в глобальных переменных не было. Другое дело, что такое далеко не всегда возможно. |
Автор: Nowichok 21.8.2009, 13:03 |
Про Application.Tag Спасибо ! Однако порой надо не одну переменную так держать в общей памяти 2Мозгоносец Спасибо. ДУмаю, это и будет ответом на поставленный вопрос. |