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));
});

相关推荐
Tan_Ying_Y8 小时前
synchronized和ReentrantLock的区别是什么?他们的底层原理是什么?
开发语言·c#
ChineHe8 小时前
Golang并发编程篇002_Go并发基础
开发语言·后端·golang
默恋~微凉8 小时前
shell(八)——WEB与Nginx
开发语言·前端·php
lqj_本人9 小时前
鸿蒙Qt网络通信:HTTPS握手失败与证书陷阱
qt·https·harmonyos
lsx2024069 小时前
Go 语言类型转换
开发语言
t***L26610 小时前
JavaScript在机器学习中的库
开发语言·javascript·机器学习
勇闯逆流河11 小时前
【C++】C++11(下)
开发语言·c++
青衫码上行11 小时前
【Java Web学习 | 第15篇】jQuery(万字长文警告)
java·开发语言·前端·学习·jquery
胡萝卜3.016 小时前
掌握C++ map:高效键值对操作指南
开发语言·数据结构·c++·人工智能·map
电子_咸鱼17 小时前
【STL string 全解析:接口详解、测试实战与模拟实现】
开发语言·c++·vscode·python·算法·leetcode