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

相关推荐
暮冬-  Gentle°4 小时前
编译器优化屏障使用
开发语言·c++·算法
华科大胡子4 小时前
此电脑网络位置异常的AD域排错指南
开发语言·php
m0_730115114 小时前
模板编程中的SFINAE技巧
开发语言·c++·算法
2401_831824964 小时前
高性能计算集群部署
开发语言·c++·算法
武超杰4 小时前
Spring 纯注解配置全解析(进阶版)
java·开发语言
机器视觉知识推荐、就业指导4 小时前
LVGL真能动摇Qt的地位吗?
开发语言·qt·系统架构
add45a4 小时前
C++代码移植性设计
开发语言·c++·算法
平常心cyk4 小时前
Python基础快速复习——集合和字典
开发语言·数据结构·python
AC赳赳老秦4 小时前
OpenClaw关键词挖掘Agent配置(附SOP脚本,可直接复制使用)
java·大数据·开发语言·人工智能·python·pygame·openclaw
qq_148115374 小时前
分布式系统容错设计
开发语言·c++·算法