Russian Qt Forum

Qt => Общие вопросы => Тема начата: izoomer от Март 16, 2007, 11:14



Название: глобальные свойства в проекте
Отправлено: izoomer от Март 16, 2007, 11:14
[qt-4.2 Linux]
Есть главный класс mainWindow в нем создаются другие классы для работы ..... есть установки глобальные для всего проекта  - числовые данные, цвета, шрифты, QString и др .... как сделать так , что бы эти данные были доступны во всех классах ? Скажем в виджете mainWindow  треубются установки о цвете а в другом классе,  создаваемом в одном из методов , требуются данные данные типа int .... или в одном из классов меняется одна из установок, и требуется что бы эти данные сразу были видны другим классам и они соостветсвующим образом изменили свои отображаемые виджеты ....
спасибо.


Название: глобальные свойства в проекте
Отправлено: evilguard от Март 16, 2007, 11:36
Ну это уже больше из области ООП и С++, чем QT. Просто надо передавать ссылку/указатель на MainWindow в дочерний класс. А глобальные переменные - зло ;)


Название: глобальные свойства в проекте
Отправлено: Sergeich от Март 17, 2007, 10:59
Юзай синглетона: http://firststeps.ru/theory/c/r.php?29


Название: глобальные свойства в проекте
Отправлено: vregess от Март 17, 2007, 12:56
Да лучший вариант для таких дел - использовать статические переменные, вместо глобальных. Кроме того использование глобальных переменных нарушает один из принципов ООП - инкапсуляции.


Название: глобальные свойства в проекте
Отправлено: evilguard от Март 17, 2007, 13:06
Клевый вариант! Надо читать GoF, без этого никуда похоже..