Qt C++连接信号槽的两种方式

在Qt中,信号和槽的机制是对象间通信的一种方式。当你使用connect函数来连接信号和槽时,有两种主要的语法形式:一种是使用字符串形式的信号和槽名称(老式的连接方式),另一种是使用函数指针(新式的连接方式,也称为“直接连接”或“静态连接”)。

这里简要说明两种方式,更多内容请看我的另一篇文章:

四种connect的方式

  1. 新式(直接)连接:
connect(pbt, &QPushButton::clicked, this, &Dialog::CalcCircleArea);
  1. 老式(字符串)连接:
connect(pbt, SIGNAL(clicked(bool)), this, SLOT(CalcCircleArea()));

分析两种连接方式:

新式连接(直接连接)
  • 优点
    • 编译时检查:由于使用了函数指针,编译器可以在编译时检查信号和槽的参数类型是否匹配,从而减少运行时错误。
    • 更快的连接:直接连接不需要在运行时解析字符串
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值