Класс QObjectCleanupHandler
Класс QObjectCleanupHandler отслеживает жизненный цикл нескольких объектов QObject. Подробнее...
| Заголовок: | #include <QObjectCleanupHandler> |
| qmake: | QT += core |
| Наследуется от: | QObject |
Открытые функции
| QObjectCleanupHandler() | |
| virtual | ~QObjectCleanupHandler() |
| QObject * | add(QObject *object) |
| void | clear() |
| bool | isEmpty() const |
| void | remove(QObject *object) |
Подробное описание
Класс QObjectCleanupHandler полезен всякий раз, когда вам нужно знать, когда несколько объектов QObject, принадлежащих кому-то другому, были удалены. Это важно, например, при ссылке на память в приложении, которая была выделена в динамической библиотеке.
Чтобы отслеживать некоторые объекты QObject, создайте QObjectCleanupHandler и используйте add() для добавления интересующих вас объектов. Если вы больше не хотите отслеживать конкретный объект, используйте remove() для его удаления из обработчика очистки. Если объект, отслеживаемый обработчиком очистки, удаляется кем-то другим, он автоматически удаляется из обработчика очистки. Вы можете удалить все объекты из обработчика очистки с помощью clear() или уничтожив сам обработчик. Метод isEmpty() возвращает true, если QObjectCleanupHandler не имеет объектов, за которыми нужно следить.
См. также QPointer.
Документация по членам-функциям
QObjectCleanupHandler::QObjectCleanupHandler()
Конструирует пустой QObjectCleanupHandler.
[virtual] QObjectCleanupHandler::~QObjectCleanupHandler()
Уничтожает обработчик очистки. Все объекты в этом обработчике очистки будут удалены.
См. также clear().
QObject *QObjectCleanupHandler::add(QObject *object)
Добавляет object в этот обработчик очистки и возвращает указатель на объект.
См. также remove().
void QObjectCleanupHandler::clear()
Удаляет все объекты в этом обработчике очистки. Обработчик очистки становится пустым.
См. также isEmpty().
bool QObjectCleanupHandler::isEmpty() const
Возвращает true, если этот обработчик очистки пустой или если все объекты в этом обработчике очистки были уничтожены; в противном случае возвращает false.
См. также add(), remove(), и clear().
void QObjectCleanupHandler::remove(QObject *object)
Удаляет object из этого обработчика очистки. Объект не будет уничтожен.
См. также add().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qobjectcleanuphandler.html