尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

Qt信号槽在使用中避免循环绑定

Qt信号槽在使用中避免循环绑定
📅 发布时间:2026/7/7 7:33:39

假设有两个Object, object1和object2

object1的信号绑定object2的槽函数
object2的信号绑定object1的槽函数
在object2的槽函数触发时,发送object2的信号,object1的槽函数会被触发,在object1的槽函数中,发送object1的信号,又会导致object2的槽函数触发,就会导致死循环。

object1.h

#ifndef OBJECT1_H #define OBJECT1_H #include <QObject> class Object1 : public QObject { Q_OBJECT public: Object1(); signals: void object1Signal(); public slots: void object1Slot(); }; #endif // OBJECT1_H

object1.cpp

#include "object1.h" #include <QDebug> Object1::Object1() { } void Object1::object1Slot() { qDebug() << __FUNCTION__; emit object1Signal(); }

object2.h

#ifndef OBJECT2_H #define OBJECT2_H #include <QObject> class Object2 : public QObject { Q_OBJECT public: Object2(); signals: void object2Signal(); public slots: void object2Slot(); }; #endif // OBJECT2_H

object2.cpp

#include "object2.h" #include <QDebug> Object2::Object2() { } void Object2::object2Slot() { qDebug() << __FUNCTION__; emit object2Signal(); }

main.cpp

#include "widget.h" #include <QApplication> #include <QObject> #include "object1.h" #include "object2.h" int main(int argc, char *argv[]) { QApplication a(argc, argv); Widget w; w.show(); Object1 obj1; Object2 obj2; QObject::connect(&obj1, SIGNAL(object1Signal()), &obj2, SLOT(object2Slot())); QObject::connect(&obj2, SIGNAL(object2Signal()), &obj1, SLOT(object1Slot())); emit obj1.object1Signal(); return a.exec(); }

相关新闻

  • Python爬虫经典案例第83篇:在线博客平台爬取:掘金数据采集实战
  • YOLOv10模型改进-损失函数改进-第89篇:YOLOv10改进策略【损失函数】| Huber Loss损失函数
  • PyTorch 2.0 CIFAR-10 模型优化:3种学习率策略对比,测试集准确率提升至69.78%

最新新闻

  • Edge/Chrome STATUS_INVALID_IMAGE_HASH 错误:3种根因分析与4步根治方案
  • lambad和stream流企业固定搭配
  • NAS容器推荐,目录树备份教程,关键词 群晖 飞牛
  • LyricsX:重构macOS音乐体验的歌词引擎
  • 计算机毕业设计之jsp母婴用品购物网站
  • 造形家:轻量化在线城市建筑三维AI建模工具测评

日新闻

  • Android逆向分析全能助手:集成化工具链与自动化工作流设计
  • 面搜索(Faceted Search)原理与工程实践指南
  • 神经网络调参避坑指南:从5个常见Loss曲线形态定位超参数问题

周新闻

  • 基于YOLOv12的番茄成熟度智能检测系统开发
  • 终极RimWorld模组管理指南:用RimSort告别模组冲突烦恼
  • AI Agent框架开发:从理论到实践的完整指南

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号