Привет всем!Чета заморочился, не могу найти подходящего решения...Есть некий объект Т (от 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 в классах-шаблонах...что делать, может есть другое решение ?
|