Автор
|
Тема: Взаимодействие классов в MDI приложении
|
zlelik |
опубликован 07-12-2001 16:36 MSK
У меня есть MDI прога, и нужно хранить один параметр для всех документов и видов, И чтоб его можно было поменять из меню. И в главном окне (CMainFrame) тоже был виден этот параметр. Заранее спасибо
|
purpe
|
опубликован 07-12-2001 16:44 MSK
создай глобальную переменную, это дёшево, надёжно и сердито :)http://www.sources.ru/NonCGI/Forum2/HTML/000096.html
|
zlelik
|
опубликован 07-12-2001 22:18 MSK
Не хочу я глобальную переменную. Можно немного попроще. Несколько объектов одного класса имеют доступ к переменной, которая для всех одинакова и при изменении в одном объекте меняется для всех. И чтоб в памяти занимала только "одно место", чтобы хоть 10 объектов хоть 100, а память одинакова занимала. Такое вообще можно? |
necer
|
опубликован 10-12-2001 09:55 MSK
А почему бы не создать в классе приложения переменную класса? А остальным классам просто передавать указатель на нее. |
migel
|
опубликован 10-12-2001 11:56 MSK
А аппликэйшн на что по вашему? |
Kir1
|
опубликован 10-12-2001 17:22 MSK
Конечно, возможно, вы что забыли про статические переменные в классе... делать надо так: //"MyClass.h" class CMyClass {... ... static long m_nMyVal; } //"MyClass.cpp" CMyClass::m_nMyVal=0;//обязательно нужно так инициализировать статич. переменную... в памяти для всех объектов этого класса будет только одна переменная... таким образом удобно делать в классе счетчик его объектов... Удачи! :)
|
zlelik
|
опубликован 10-12-2001 21:36 MSK
Статическую переменную я пробовал, чего то там компилятор ругался.А вообще можно из класса документа получить указатель на класс главного окна (CMainFrame)? |
Jack
|
опубликован 11-12-2001 09:05 MSK
AfxGetMainWnd() |