Владение QAction в QMenu

Я использовал Qt для создания базового GUI для приложения, и у меня возникло несколько вопросов... Итак, я создал GUI, он работает нормально, и я решил кое-что проверить...

for(int i=0; i < 100000; i++)
{
    menu = new QMenu(this);
    act = new QAction("About", menu);
    menu->addAction(act);
    connect(act, SIGNAL(triggered()), this, SLOT(slotHelpAbout()));
    menuBar()->addMenu(menu)->setText("Help");
}
menuBar()->clear();

Я использую QMenuBar класса QMainWindow и заполняю его QMenu, которые также заполнены QAction, для которых я подключаю сигнал срабатывания к нескольким слотам... Все работает нормально, но когда я вызываю clear, он должен удалить пункты меню/действия, содержащиеся в QMenuBar. Я проверяю в диспетчере задач, и использование памяти все еще огромное... Даже после:

    QList<QAction*> lst = menuBar()->actions();

    for(int i=0;i < lst.length(); i++)
    {
        delete lst.at(i);
    }

Разве вся память, используемая QMenus и QActions не должна быть освобождена?

5
задан elephantintheroom 30 January 2012 в 20:54
поделиться