Ответ
 
Опции вопроса Поиск в этом вопросе Опции просмотра
  #1  
Старый 28.09.2011, 17:23
Аватар для Guest
Guest
Вопрос
Сообщений: n/a
По умолчанию

Привет всем!Чета заморочился, не могу найти подходящего решения...Есть некий объект Т (от QObject), УКАЗАТЕЛЬ на объект одновременно находится в разных списках QList, QSet и т.п.необходимо при удалении объекта, удалять указатель на него из всех списков, автоматически.я решил использовать сигнал destroyed(QObject*object), и создать свои классы List, Set, где при добавлении подписывать список на сигнал объекта destroyed(....) типа:Код:template class List : public QList{public: T add(T item){ append(item); connect(item, SIGNAL(destroyed(QObject*), this, SLOT(_destroyed(QObject*))); }private slot: void _destroyed(QObject*object){ removeOne(object); // как-то так.... }};Но! Qt пишет, что не может использовать Q_OBJECT в классах-шаблонах...что делать, может есть другое решение ?
Ответить с цитированием
Ответ


Похожие вопросы
Тема Автор Раздел Ответов Последний вопрос или ответ
Очистка памяти (удаление объекта класса) Guest Продолжение старого архива 0 16.10.2011 16:21
Обращение напрямую к методам объекта внутри другого объекта? Guest Продолжение старого архива 0 16.10.2011 16:05
удаление записей из QList используя указатель на QList. Нужна консультация. Guest Новый архив 3 0 28.09.2011 20:43
QList<t> удаление одинаковых элементов QList / QSet Guest Новый архив 2 0 28.09.2011 19:42
[Решено]SIGSEGV при вызове QList::append() Guest Новые вопросы и ответы 4 0 28.09.2011 15:34



© www.otvetnemail.ru - Форум вопросов и ответов.