QT父类信号调用子类槽函数

故事背景:我定义了一个QT父类,里面有自定义信号和槽函数,我在main函数定义父类指针指向子类对象,此时发信号,子类收不到,开始咱们的探险之路。。。

解决方案:根据加断点发现调用的是父类的信号,但是信号槽是在子类构造函数做的关联;此时把connect放在父类就可以了(这只是一种解决方案);另一种是在网上查看了父类调用子类方法dynamic_cast,下面用代码解释下我的两种解决方案

代码有话说:

一、先看下父类和子类的头文件

第一种解决方案,connect放在父类构造函数:

第二种解决方案,使用dynamic_cast转换为子类对象,然后把connect放在子类的构造函数中

这是在开发中遇到的问题,分享给大家,如果有什么更好的解决方案或者此类问题,欢迎大家分享和评论。

Question:QT信号不能实现多态吗?同名信号(父类的信号子类是否继承了)?因为根据我这个解决方案还是有点疑惑。。。还请大佬解答。

Original: https://www.cnblogs.com/xupeidong/p/13863276.html
Author: 徐沛东
Title: QT父类信号调用子类槽函数

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/606958/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 用 shell 脚本制造连接频繁中断的场景

    问题的提出 最近在准备客户端的新版本,在内部灰度过程中,发现一类奇怪的 dump,通过查看日志和堆栈,可以确定是因为每次连上后台就被后台断开了、导致多次重连后随机发生的崩溃。dum…

    Linux 2023年6月6日
    091
  • NRF24L01双向无线通信

    最近闲来无事,利用手头资源研究了一下基于nrf24L01的双向通信实验,整个系统如下图所示。原理:nrf24L01本身是一种单向通信的无线模块,但是,当nrf24L01工作在增强型…

    Linux 2023年6月14日
    093
  • Tomcat下载安装以及配置方法

    Tomcat环境变量配置方法 注意一定要在java环境配置成功之后再来配置tomcat。我这里仅展现在Windows系统下载的安装方法 Tomcat下载地址如下: https://…

    Linux 2023年6月7日
    094
  • 一文聊透 Netty 核心引擎 Reactor 的运转架构

    本系列Netty源码解析文章基于 4.1.56.Final版本 本文笔者来为大家介绍下Netty的核心引擎Reactor的运转架构,希望通过本文的介绍能够让大家对Reactor是如…

    Linux 2023年6月6日
    089
  • Linux 配置Git

    前言:请各大网友尊重本人原创知识分享,谨记本人博客: 南国以南i 一、用git –version命令检查是否已经安装 二、下载git源码并解压 wget https:/…

    Linux 2023年5月27日
    0131
  • 51单片机入门基础介绍

    基本元器件原理及功能 常用元器件 CAP 电容RES 电阻CRYSTAL 晶振7SEG 数码管sounder 蜂鸣器BUTTONLED-BIBY 二极管PN结,P阳极N阴极,电流方…

    Linux 2023年6月7日
    088
  • phpcms如何在前台文章列表前显示所属类别名称

    最近做单位网站模版遇到的问题,欲实现的效果: 但是phpcms中自带的文章列表标签没有这个功能,数据库中文章表中也只有类别id的字段,因此不能通过简单的{$r[catname]}读…

    Linux 2023年6月13日
    091
  • JDK8以上提高开发效率

    1 接口的默认方法和静态方法 1.1 接口中可以定义默认方法和静态方法。 默认方法使用default修饰,静态方法和默认方法可以多个; 静态方法通过接口直接调用,默认方法通过接口实…

    Linux 2023年6月13日
    099
  • 自动化集成:Pipeline流水语法详解

    前言:该系列文章,围绕持续集成:Jenkins+Docker+K8S相关组件,实现自动化管理源码编译、打包、镜像构建、部署等操作; 本篇文章主要描述Pipeline流水线用法。 一…

    Linux 2023年5月27日
    0116
  • MySQL实现 group_concat 排序

    MySQL支持实现group_concat() 内部自定义排序: 实例: 新建一张表 reward,表中数据如下: SQL: SELECT uid, GROUP_CONCAT(mo…

    Linux 2023年6月13日
    0112
  • 高通平台如何避免误入FFBM模式

    前面两篇博客分别介绍了通过fastboot和QFIL工具退出FFBM模式的方法。虽然售后的同学可以这么指导用户做恢复,但步骤多操作也麻烦,且属于事后处理,如果大面积高概率地出现,会…

    Linux 2023年6月7日
    098
  • Redis优化总结

    注意在redis.conf中的小聚合数据类型的特殊编码设置(http://carlosfu.iteye.com/blog/2254572) hash-max-zipmap-entr…

    Linux 2023年5月28日
    075
  • 十、进程管理

    什么是进程?进程(Process)是一个程序在其自身的虚拟地址空间的一次执行活动。之所以要创建进程,就是为了使多个程序可以并发的执行,从而提高系统的资源利用率和吞吐量。简单来说进程…

    Linux 2023年6月7日
    0139
  • Ubuntu下安装多个JDK,并设置其中一个为默认JDK

    由于使用需要,要在机器上同时安装OpenJDK 8和11,并将8设置为默认JDK 首先安装OpenJDK sudo apt-get install openjdk-8-jdk su…

    Linux 2023年6月6日
    0100
  • [数据库]ACID、CAP、BASE特性

    SQL与noSQL 对比项 关系型SQL 非关系型SQL 关系表 数据集(键值/JSON文档/哈希表/其它) 结构化、提前定义表结构 动态调整模式,非结构化 纵向扩展,提高处理能力…

    Linux 2023年6月13日
    087
  • SpringBoot中通过AOP整合日志文件

    1.SpringBoot中通过AOP整合日志文件 1. 导入相关的依赖 org.springframework.boot spring-boot-starter org.sprin…

    Linux 2023年6月14日
    098
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球