| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Где лучше создавать обьекты? |
| Автор: Coocky 4.8.2004, 22:33 |
| Часто сталкиваюсь с проблемой,когда "не работают" обьекты созданые в OnInitDialog();Например строка состояния не показавается или картинка на кнопке не появляется,пока LoadBitmap() не сделаешь в конструкторе,а SetBitmap() можно в OnInitDialog(),ну и др. Может выведем какое-то правило,где и что создается?Или все в конструктор пихать,а OnInitDialog оставим для переменных CString ,CRect ,.... |
| Автор: Олег М 5.8.2004, 05:22 |
| Уточни вопрос. Что значит создавать? Динамически? Абсолютно по барабану где создаются объекты, если ты всё правильно делаешь. У тебя похоже проблема не в создании объектов, а в чём то другом. СString и CRect, кстати не переменные, а тоже такие же объекты. |
| Автор: Temnozor 5.8.2004, 11:31 | ||
Правда твоя. Если объекты принадлежат классу окна, то создаются они всегда в конструкторе вместе с окном. Конечно, если они - указатели, то создавать их можно где угодно. В OnInitDialog удобно объекты инициализировать (присваивать значение). Могу выдать предположение, что создаваемые тобой (Coocky) объекты являются локальными в функции OnInitDialog и поэтому сразу уничтожаются (не успев пожить |
| Автор: Coocky 5.8.2004, 19:38 |
| Действительно,в OnInitDialog() я создавал (кнопки,эдиты) через указатели,а CStatusBar и др. через обьекты.Пардон...Невнимательный |