欢迎关注我的公众号, 可免费看所有Qt系列文章~
前言
写了这么久,终于来到Qt核心机制讲解了,这个玩意不搞通,很多东西无法讲解下去,当然在前文中已经初步介绍了信号与槽的使用。
特点介绍
信号与槽是Qt的一个核心特点,也是它区别于其他框架的重要特性。信号与槽是对象间进行通信的机制,也需要由Qt的元对象系统支持才能实现的。
Qt使用信号与槽的机制实现对象间通信,它隐藏了复杂的底层实现,完成信号与槽的关联后,发射信号时并不需要知道Qt是如何找到槽函数的。Qt的信号与槽机制与Delphi和C++Builder的事件一响应比较类似,但是更加灵活。
某些开发架构使用回调函数(callback)实现对象间通信。与回调函数相比,信号与槽的执行速度稍微慢一点,因为需要查找连接的对象和槽函数,但是这种差别在应用程序运行时是感觉不到的,而其提供的灵活性却比回调函数强很多。
连接方式
QObject::connect() 函数有多重参数形式,一种 参数形式的函数原型是:
QM