crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Как правильно очистить QMap<uorPropertyTabType, QWidget*>?
trdm
  опции профиля:
сообщение 1.12.2008, 23:00
Сообщение #1


Дмитрий Трошин
****

Группа: Участник
Сообщений: 575
Регистрация: 12.1.2008
Пользователь №: 68

Спасибо сказали: 21 раз(а)




Репутация:   6  


Может быть так?
    
    QWidget* wi = NULL;
    QMap<uorPropertyTabType, QWidget*>::iterator i = m_tabs.begin();
    while(i != m_tabs.end()){
        wi = *i;
        delete wi;
        i++;
    }


Сообщение отредактировал trdm - 1.12.2008, 23:01
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 2.12.2008, 8:02
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9642
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


а это void QMap::clear () не подходит?
или тебе только значения чистить?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 2.12.2008, 9:12
Сообщение #3


Мастер
******

Группа: Модератор
Сообщений: 3283
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Я думаю проще будет так:
QMap<uorPropertyTabType, QWidget*> m_tabs;
...
foreach( QWidget *pWidget, m_tabs)
{
   delete pWidget;
   pWidget = 0;
   // или pWidget->deleteLater();
}

m_tabs.clear();
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
trdm
  опции профиля:
сообщение 2.12.2008, 12:39
Сообщение #4


Дмитрий Трошин
****

Группа: Участник
Сообщений: 575
Регистрация: 12.1.2008
Пользователь №: 68

Спасибо сказали: 21 раз(а)




Репутация:   6  


да мне просто надо "правильно" а не проще :)
что-бы утечек не было...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 2.12.2008, 12:46
Сообщение #5


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9642
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(trdm @ 2.12.2008, 15:39) *
что-бы утечек не было...
ну у Эдика, наболее класический способ, надежный. не только удаляет но и обнуляет указатель
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 19.8.2018, 9:38