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

相关推荐
二川bro1 小时前
特征工程完全手册:2025 Python实战技巧
开发语言·python
p***h6431 小时前
JavaScript图像处理开发
开发语言·javascript·图像处理
2501_941148152 小时前
高并发搜索引擎Elasticsearch与Solr深度优化在互联网实践分享
java·开发语言·前端
专家大圣2 小时前
告别局域网束缚!飞牛云 NAS+cpolar 让远程管理更简单
开发语言·网络·内网穿透·cpolar
共享家95272 小时前
QT-界面优化(上)
开发语言·qt
熊猫钓鱼>_>2 小时前
从零开始构建RPG游戏战斗系统:实战心得与技术要点
开发语言·人工智能·经验分享·python·游戏·ai·qoder
FuckPatience2 小时前
C++ 常用类型写法和全称
开发语言·c++
q***R3082 小时前
Kotlin注解处理
android·开发语言·kotlin
lly2024062 小时前
C++ 数组
开发语言
csbysj20203 小时前
C 强制类型转换
开发语言