Название: Освобождение памяти Отправлено: 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)? Название: Re: Освобождение памяти Отправлено: Dendy от Январь 27, 2009, 23:09 Да, QAction нужно удалять отдельно, так как они могут быть привязаны к нескольким элементам. Это такой себе узел, в который сливаются действия пользователя. Например, из меню, по нажатию кнопки, горячей клавишей. Следовательно отдельно взятый источник события не может удалить QAction, так как его может использовать кто-то другой. Удаляйте вручную, или назначьте для QAction родителя, который его удалит в собственном деструкторе.
|