![]() |
|
|
![]()
|
|
| yngwie19 |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
Всем привет подскажите как лучше создавать новые виджеты
так
или
В книгах по-разному. Влияет ли это на что-нибудь? |
||||
|
|||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 7 Всего: 250 |
Да, влияет на время жизни. В первом случае объект погибнет при выходе за границы блока. |
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 3 Всего: 211 |
||||
|
||||
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
Это Я все понимаю. Как принято в Qt - создавать объект через указатель или нет.
|
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 4 Всего: 121 |
Очень даже связан. Читать раздел assistant'a "Object Trees and Object Ownership" Если объект имеет parent'a то такой объект должен быть создан в куче (через указатель тобишь). За уничтожением такого объекта будет следить система Qt, при уничтожении парента все наследники так же будут уничтожены. -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 7 Всего: 250 |
"Наследник" имеет некоторое другое значение. В данном случае подходит слово "ребенок". |
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 4 Всего: 121 |
mes, да child'ы в оригинальной терминологии.
-------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 3 Всего: 211 |
||||
|
||||
| yngwie19 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
||||
|
||||
| azesmcar |
|
||||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 3 Всего: 211 |
Смотря какие обьекты. W4FhLF сказал какие конкретно обьекты надо создавать в куче. QString например в куче создавать не надо. Тут речь не про то, поместится или нет. Просто QT построена на принципе Parent->Child и при удалении Parent-а все его потомки удаляются автоматически. Удаляются оператором delete. Проверьте что будет если написать
думаю вопросы отпадут Это сообщение отредактировал(а) azesmcar - 6.6.2009, 11:35 |
||||
|
|||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 7 Всего: 250 |
не всегда и по большей степени не из за размера. Главное управление временем жизни. если поймете как связаны эти две нижеприведенные цитаты, поймете и в чем дело Это сообщение отредактировал(а) mes - 6.6.2009, 12:58 |
|||
|
||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 5 Всего: 44 |
все правельно понял: "чилда" можно удалить вручную(delete)? просто столкнулся с итуацией: есть MainWindow, упрощая задачу, раз в минуту необходимо открытвать диалоговое окно на 10 секунд и закрывать его, те оно само закрывается по своему внутреннему таймеру. так вот если приложение работает долго, а оно и должно долго работать, то видно как память "утекает". Вопрос: можно ли в диалоговом окне по закрытию делать delete this? Если нет, то как быть тогда? Заранее благодарен! Добавлено через 1 минуту и 2 секунды ЗЫ модальное диалоговое окно, те необходимо в данном случае указать парента в качестве MainWindow |
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 4 Всего: 121 |
chaos, а зачем для каждого раза создавать новый виджет? Почему нельзя показывать один и тот же, но с изменениями?
-------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 5 Всего: 44 |
W4FhLF, вообще можно.
больше нитересует вопрос выше. ЗЫ переделаю на создание одного виджета |
|||
|
||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 5 Всего: 44 |
так что на счет удаления объекта в ручную?
|
|||
|
||||
![]()
|
| Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |