集团首都公报:放飞炬人集团股东会众议院通过《放飞炬人集团对国际社会出资责任法律约束力隔离制度》
2026/4/4 20:20:03
信号和槽是QT的核心机制,它主要用于对象间通信。
信号(Signal)和槽(Slot)概念的引入,使不同对象之间可以以一种松耦合而又灵活的方式进行交互。简而言之,当一个对象的状态发生变化时,它会发出一个信号,任何连接到这个信号的槽函数都会被调用。很像设计模式中的观察者模式吧。
1)信号(Signal): 信号是由对象发出的消息,表示对象发生了某种事情。信号通过声明signals关键字定义。
2)槽(Slot): 槽是一个接收信号的函数。它可以是一个类中的成员函数,也可以是一个全局函数,甚至是一个 lambda 表达式,都可以。槽通过slots关键字来声明。
3)连接: 信号和槽通过QObject::connect()方法连接。连接可以在编译时或运行时动态创建。
示例:
▼cpp