在写程序调用c++thread :std::thread t(&ThreeLightCameraParam::readData,dev_fd, flag, _tmpImageParameters);时出现如下错误: error: static assertion failed: std::thread arguments must be invocable after conversion to rvalues
120 | typename decay<_Args>::type...>::value,
改为如下语句编译通过:
std::thread t(std::bind(&ThreeLightCameraParam::readData,&_threeLightCameraParam2,dev_fd, flag));
其中_threeLightCameraParam2是ThreeLightCameraParam的对象。
关于thread 的介绍具体参见:https://blog.youkuaiyun.com/ouyangfushu/article/details/80199140
本文讲述了如何在使用C++标准库中的std::thread时,将成员函数转换为可调用对象,以避免静态断言错误。作者分享了将ThreeLightCameraParam对象绑定到线程的方法,以便于线程正确执行readData函数。
7336

被折叠的 条评论
为什么被折叠?



