| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Глобальные переменные |
| Автор: Zealot 29.10.2005, 09:16 | ||||
| Народ! Проблема такая: есть модуль, в нём написано:
в другом модуле написано:
Компиляю, запускаю - X не меняется! Смотрю Debug'ером: В пределах процедуры ChangeX X меняется, а глобально - нет! Хотя в дельфях всё работает, как часы! Кто знает, что с этим делать? Заранее, спасибо! |
| Автор: Kowal 29.10.2005, 10:51 | ||
Допиши к определению переменной слово extern
|
| Автор: BreakPointMAN 29.10.2005, 10:56 |
| смотри в сторону спецификатора extern |
| Автор: Zealot 29.10.2005, 11:29 | ||||||||
Так, если я правильно понял, то объявляем переменную так:
Но компилятор на этапе линковки выдаёт ошибку! если же сделать так:
то глобальная переменная меняется. Но если есть третий модуль, то
то переменная t = 0! Как быть в этом случае? ----------------------------------------------------- По ушам бьёт "Пилигрим", "Девятый вал" |
| Автор: _hunter 29.10.2005, 15:49 |
| в заголовке пишеш extern int X; в .cpp int X = 1; и больше нигде ничего писать не нужно ( просто не забудь заколовки приинклудить ) |
| Автор: Zealot 29.10.2005, 17:49 |
| ОГРОМНОЕ СПАСИБО, _hunter! Теперь всё заработало! Ты спас мой проект! |