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

相关推荐
猫猫的小茶馆15 小时前
【ARM】ARM的介绍
c语言·开发语言·arm开发·stm32·单片机·嵌入式硬件·物联网
蓑衣夜行15 小时前
Qt QWebEngine 开启硬件加速注意事项
开发语言·c++·qt·web·qwebengine
CoderYanger15 小时前
动态规划算法-简单多状态dp问题:15.买卖股票的最佳时机含冷冻期
开发语言·算法·leetcode·动态规划·1024程序员节
韩曙亮15 小时前
【Web APIs】JavaScript 执行机制 ( 单线程特点 | 同步任务与异步任务 | 同步先行、异步排队 | 事件循环机制 )
开发语言·前端·javascript·异步任务·同步任务·web apis·js 引擎
水天需01016 小时前
Linux 命令面试题目大全
qt
寻找华年的锦瑟16 小时前
Qt-QStackedWidget
java·数据库·qt
洲星河ZXH16 小时前
Java,比较器
java·开发语言·算法
sztian6816 小时前
JavaScript-----本地存储、数组中map方法、数组中join方法
开发语言·javascript·ecmascript
lsx20240616 小时前
Bootstrap5 输入框组
开发语言
lsx20240616 小时前
C++ 动态内存管理
开发语言