Eve1yn0 2023-04-12 16:08 采纳率: 64.5%
浏览 26
已结题

一个关于QtC++类的问题

一个百思不得其解的问题。首先假如我有三个类,分别叫btn1,btn2和lab,前两个是继承于QPushButton,第三个是继承于QLabel。
btn1和btn2分别都有自己的成员变量以及成员函数
在lab中有一个成员变量用来记录对象(类似于 btn1 * b),让整个类都能访问,但是这个对象是可以根据类的变化而变化,也就是假如我在lab类内写一个成员函数,通过传进来的数字来确定这个b是btn1还是btn2的对象。
不知道有没有方法可以实现,我主要是为了在、通过lab的keyPressEvent操纵不同btn内的函数,希望各位帮忙看看,谢谢

  • 写回答

2条回答 默认 最新

  • mideum 2023-04-12 16:44
    关注

    这种情况我更倾向于创建一个中间虚类Btn,继承于QPushButton,然后定义一个方法A是纯虚函数。
    然后btn1和btn2都继承于Btn,然后分别实现自己的A()。
    那么在lab里存储Btn *b, 只要调用b->A()就可以自己判断是调用btn1::A()还是btn2::A()

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月20日
  • 已采纳回答 4月12日
  • 创建了问题 4月12日

悬赏问题

  • ¥20 用HslCommunication 连接欧姆龙 plc有时会连接失败。报异常为“未知错误”
  • ¥15 网络设备配置与管理这个该怎么弄
  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?