Skip to content

Latest commit

 

History

History
26 lines (19 loc) · 2.18 KB

pidsumok-signalno-slotovi-zyednannya.md

File metadata and controls

26 lines (19 loc) · 2.18 KB

Підсумок: сигнально-слотові з'єднання

Підсумуємо наші знання про сигнали, слоти та сигнально-слотові з'єднання.

Слоти:

  • слот реалізують як звичайний метод класу;
  • визначають в одній з секцій для слотів (private slots, protected slots, public slots);
  • слот може повертати значення, але це не можна якимось чином використати у сигнально-слотовому з'єднанні;
  • довільна кількість сигналів може бути приєднана до одного слота;
  • слот можна викликати, як звичайний метод класу.

Сигнали:

  • визначають в секції для сигналів (signals);
  • сигнали завжди повертають void;
  • сигнал мусить бути без реалізації (реалізацію для сигналу надає метаоб'єктний компілятор moc);
  • сигнал може бути приєднаний до довільної кількості слотів;
  • зазвичай емітування сигналу призводить до прямого виклику слоту, але виклик може також бути
  • опосередкований (залежить від типу з'єднання);
  • слоти при цьому можуть викликатися у довільному порядку;
  • для емітування сигналу, достатньо простого виклику (як у випадку з методами), використовуючи
  • перед викликом макрос emit (використовується для розрізнення виклику методу від емітування сигналу, але фактично не виконує ніякої спеціальної ролі).

TBD: створення сигнально-слотових з'єднань, створення власних сигналів та слотів