|
1Qter豆
我定义了一个右键弹出菜单函数,函数如下。我想问一下各位大佬,rmenu和2个Action需不需要delete,不delete的话会不会造成内存泄漏
void MyListView::showRightMenu(const QPoint &p)
{
QMenu *rmenu = new QMenu(this);
QAction *addAction = rmenu->addAction("add");
QAction *delAction = rmenu->addAction("delete");
connect(addAction , SIGNAL(triggered(bool)), this, SLOT(edit_menu1()));
connect(delAction, SIGNAL(triggered(bool)), this, SLOT(edit_menu2()));
rmenu->exec(this->mapToGlobal(p));
}
|
最佳答案
查看完整内容
QMenu构造时指定了父(this),那么父析构时会自动析构子。所以无需delete。但是,建议将该对象作为成员变量进行保存,以免每次都申请新内存,造成浪费。
|