от
У меня есть «нормальный» (не производный от qt) класс. Он получает ссылку на QObject. Внутри этого класса я хочу соединить входной сигнал QObject с лямбдой. Пока все хорошо, все работает отлично, за исключением случаев, когда объект моего класса уничтожается перед передачей в QObject. Сигнал от QObject теперь указывает на лямбду, которой больше нет. Обычный способ сделать это - мой класс наследует от QObject и передает
this
в качестве контекста
connect
. Затем соединения будут автоматически уничтожены кодом Qt, когда мой объект умрет. Еще один способ решения этой проблемы - сохранить возвращаемый результат подключения,
QMetaObject::Connection
, а затем в деструкторе моего класса вызвать
QObject::disconnect(resultOfConnect)
. Теперь, как я хотел решить это так:
class SomeQtDerivedClass : public QObject {...}

class MyClass
{
public:
    MyClass(SomeQtDerivedClass

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
Анти-спам проверка:
Чтобы избежать проверки в будущем, пожалуйста войдите или зарегистрируйтесь.
...