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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QSqlQueryModel - утечет ли память  (Прочитано 1880 раз)
NeCoder
Гость
« : Февраль 22, 2018, 16:50 »

Есть такая функция. Статичный анализатор Clang ругается на потенциальную утечку памяти, мол создаешь sqlModel но нигде не удаляешь. Стоит ли волноваться? setcombo_static вызываю единожды в конструкторе.

Код:
void dbwindow::setcombo_static(QSqlDatabase &db_model, QComboBox *combo, QString row, bool installEF)
{
    QSqlQueryModel *sqlModel=new QSqlQueryModel(this);
    QSqlQuery query(db_model);
    if(query.exec("SELECT DISTINCT "+row+" FROM " + db_model.connectionName() + " WHERE "+row+"<>'';"))
    {
        sqlModel->setQuery(query);

        QSortFilterProxyModel *sort = new QSortFilterProxyModel(this);
        sort->setSourceModel(sqlModel);
        sort->setSortLocaleAware(true);
        sort->sort(0);

        combo->setModel(sort);
        combo->setCurrentIndex(-1);
    }

    if(installEF!=false) combo->installEventFilter(this);

    return;
}
Записан
Apktyc
Самовар
**
Offline Offline

Сообщений: 129


Просмотр профиля
« Ответ #1 : Февраль 22, 2018, 16:57 »

Так сделайте delete sqlModel в деструкторе, не заставляйте Clang волноваться.  Веселый
Записан
NeCoder
Гость
« Ответ #2 : Февраль 22, 2018, 17:02 »

Так сделайте delete sqlModel в деструкторе, не заставляйте Clang волноваться.  Веселый

Это он меня заставляет волноваться а не я его  Смеющийся
В том и вопрос - удалится ли sqlModel (а так же sort, который я так же создаю) сам?

Не пинайте, только начинаю.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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