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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: [РЕШЕНО] Сигналы и слоты в динамической цепи классов  (Прочитано 2875 раз)
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« : Сентябрь 02, 2012, 21:15 »

Здравствуйте! Улыбающийся
Пилил сейчас проект, и заинтересовался вопросом про сигналы и слоты.
Погуглил, прочитал из документации про них, но ответ на свой вопрос не получил Грустный

Ситуация такая:
Есть виджет, принимающий и отправляющий сигналы, с ним коннектится другой класс, написал функцию что то типа void setConnectWithType(Type *type),
как вы видите в нее передается указатель, а внутри проверочка на существования указателя:
Код:
if(type)
и в скопках куча connect(), и благодаря этому можно к такому виджету можно подключить кучу классов Type
А что случится, если один из этих классов будет освобожден?
Будет ли к нему отправлен сигнал?
Нужно ли принудительно рассоединять до освобождения с помощью disconnect() или это уже позаботились до нас?
« Последнее редактирование: Ноябрь 11, 2012, 20:28 от gil9red » Записан

GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #1 : Сентябрь 02, 2012, 21:42 »

Нужно ли принудительно рассоединять до освобождения с помощью disconnect() или это уже позаботились до нас?
уже позаботились
Записан

Qt 5.11/4.8.7 (X11/Win)
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #2 : Сентябрь 02, 2012, 21:51 »

А есть ли у вас, GreatSnake, на примете какая то официальная информация потверждающая оное? Улыбающийся
не сердитесь, но предпочитаю увидеть своими глазами Улыбающийся
Записан

wester
Гость
« Ответ #3 : Сентябрь 02, 2012, 22:04 »

Цитировать
A signal-slot connection is removed when either of the objects involved are destroyed.
http://doc.qt.nokia.com/4.7-snapshot/qobject.html#disconnect
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #4 : Сентябрь 02, 2012, 22:18 »

понятно) не там смотрел значит Улыбающийся
Записан

Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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