Qt解决槽函数中发送的信号的参数会变化带来的错误

connect(item, &MusicItemWidget::playRequest, this, [this] {
emit playMusic(QUrl(this->m_mediaPath);
);

如上图,this->m_mediaPath是个成员变量,但自己的初衷是发送一个最开始捕获的值,那么可以使用下面的方法:

QString fixedMediaPath = this->m_mediaPath; // 捕获当前的 m_mediaPath
connect(item, &MusicItemWidget::playRequest, this, [fixedMediaPath, this] {
emit playMusic(QUrl(fixedMediaPath));
});

相关推荐
少控科技1 小时前
QT新手日记024 - QT001程序代码
开发语言·qt
码农水水6 小时前
国家电网Java面试被问:TCP的BBR拥塞控制算法原理
java·开发语言·网络·分布式·面试·wpf
浮尘笔记7 小时前
Go语言临时对象池:sync.Pool的原理与使用
开发语言·后端·golang
咕噜咕噜啦啦7 小时前
Java期末习题速通
java·开发语言
BHXDML7 小时前
第七章:类与对象(c++)
开发语言·c++
梦梦代码精8 小时前
BuildingAI vs Dify vs 扣子:三大开源智能体平台架构风格对比
开发语言·前端·数据库·后端·架构·开源·推荐算法
又见野草9 小时前
C++类和对象(中)
开发语言·c++
kgduu9 小时前
js之表单
开发语言·前端·javascript
钊兵9 小时前
java实现GeoJSON地理信息对经纬度点的匹配
java·开发语言
毕设源码-钟学长9 小时前
【开题答辩全过程】以 基于Python的健康食谱规划系统的设计与实现为例,包含答辩的问题和答案
开发语言·python