Russian Qt Forum
Ноябрь 25, 2024, 09:32 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Освобождение памяти  (Прочитано 2366 раз)
Vld2
Гость
« : Январь 27, 2009, 22:39 »

Есть у меня виджеты, скажем QTreeWidgetItem, и для каждого виджета есть свой QAction
QTreeWidgetItem *ob1= new QTreeWidgetItem(this);
QAction *p_act=new QAction();
ob1->addAction(p_act);
delete ob1;
если я скажем удалю ob1, то надо мне ли освобождать память для p_act (делать delete p_act)?
Записан
Dendy
Гость
« Ответ #1 : Январь 27, 2009, 23:09 »

Да, QAction нужно удалять отдельно, так как они могут быть привязаны к нескольким элементам. Это такой себе узел, в который сливаются действия пользователя. Например, из меню, по нажатию кнопки, горячей клавишей. Следовательно отдельно взятый источник события не может удалить QAction, так как его может использовать кто-то другой. Удаляйте вручную, или назначьте для QAction родителя, который его удалит в собственном деструкторе.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.052 секунд. Запросов: 21.