将build文件夹删掉重新编译。
打开目标项目上一级的pro文件,将目标文件名字注释或者删除掉,最后保存,qt就会自动更新,将该项目隐藏掉。
出现该问题原因是调用了一个只声明没实现的函数(头文件声明了,源文件没实现)
OXFeeeFeee指针的含义_0xfeeefeee-CSDN博客
此值的含义为: 此指针指向的位置已经被释放了, 但释放后,又错误的重新调用了这个无效指针。
0xfeeefeee的含义为: 指针指向的空间已经被DELETE释放掉,但程序在未给该指针重新赋值前,又错误的调用了这个无效的指针
内存中常见异常值的解释(0xcccccccc 0xcdcdcdcd 0xfeeefeee等)_0xfeeefeee是什么-CSDN博客
QT发射一次信号,槽函数执行了多次的背后思考-CSDN博客
槽函数会被执行多次的问题原因及解决方法_为什么槽函数不能显示多次定义-CSDN博客
目前使用的解决方法是,再绑定信号槽的时候,connect添加第五个参数Qt::UniqueConnection(表示如果该信号以前没连接过,则连接它,返回true,如果以前连接过,则不再连接,返回false)
注意**:该参数对匿名函数形式的连接****无效**
connect(dynamic_cast<DeviceMainView*>(w),&DeviceMainView::sigShowDeviceToLeft,this,[=](){
emit sigShowDevicesToLeft();
SCDebug<<"fff3";
},Qt::UniqueConnection);
//1 √ 参数限制 防止槽函数被多次触发
//connect(this,&NewDeviceSettingWidget::sigNavButtonMenuAction,dynamic_cast(w),&DeviceMainView::slotNavButtonMenuAction,Qt::UniqueConnection);
//2 × disconnect 先断开连接 再重新连接 ?还是会多次触发
QMetaObject::Connection connectHandler = connect(this,&NewDeviceSettingWidget::sigNavButtonMenuAction,dynamic_cast<DeviceMainView*>(w),&DeviceMainView::slotNavButtonMenuAction);
disconnect(connectHandler);
connect(this,&NewDeviceSettingWidget::sigNavButtonMenuAction,dynamic_cast<DeviceMainView*>(w),&DeviceMainView::slotNavButtonMenuAction);
每次绑定的环境失效前(如在一个对话框中被绑定,该对话框被关闭则视为失效),执行disconnect()函数,将该绑定解除。
思考:
对话框被关闭,意味着将会调用void Widget::closeEvent(QCloseEvent *event)函数,那么可以在此函数中判断,关闭窗口时,发送信号给connect所在类,然后执行disconnect函数,解除连接关系。
原因:历史断点(之前打的断点)问题
解决:删掉所有历史断点就可以了
前提删过相关文件 以为重构编译可以重新生成 自定义了路径
解决:整个文件夹删掉 重构(之前只清空了文件夹,文件夹没有删掉)
重新构建时,程序正在运行,关掉程序
【填坑】解决“要继续此操作,至少需要一个有效且已启用的储存库”问题_要继续此操作,至少需要一个有效且已启用的储存库-CSDN博客
维护QT添加或移除组件_此操作至少需要一个处于启用状态的有效资料档案库-CSDN博客
重新debug一次就好了
qt构建错误: dependent “*.h” does not exist. - 我来乔23 - 博客园 (cnblogs.com)
原因:之前添加了该文件后又删除,可能项目文件没有更新,查看所在pro文件后发现没有删除该文件的声明
尝试了重新清除、qmake、构建 还是不可以
解决:pro文件相关代码删除后再编译就可以了。
原因
所在pro里没有添加对应的依赖库
解决
加上对应的依赖库
[How to fix foreach warning: allocating an unneeded temporary container -Wclazy-container-anti-pattern
原因
解决