connect问题

connect问题

https://img1.sycdn.imooc.com/climg/6667bd0509d1e2e616330848.jpg




使用connect函数时,报了:E:\QT\5.14.0\msvc2017_64\include\QtCore\qobject.h:264: error: C2664: “QMetaObject::Connection QObject::connectImpl(const QObject *,void **,const QObject *,void **,QtPrivate::QSlotObjectBase *,Qt::ConnectionType,const int *,const QMetaObject *)”: 无法将参数 3 从“const Settings *”转换为“const QObject *”。这个错误。


这是什么原因?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

首先确保你的Setting类继承于QObject类,class Settings : public QObject 

然后可以使用类型转换如下:

connect(sender, SIGNAL(signal()), static_cast<QObject*>(settings), SLOT(slot()));


问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
C++中高级工程师
  • 参与学习       131    人
  • 解答问题       53    个

无论你在哪个C++领域,越早提升高阶能力,职业发展越好 以工程实践驱动教学,全方位提升“内功,思维,设计,技术”能力 简历指导+1V1答疑+直播答疑等专属服务保障,学习无忧

了解课程
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师