C++ 11 多线程之坑

代码:

std::thread t1(do_detect, vector1, face1, pic_paths1);

编译报错:

thread:342:5: error: attempt to use a deleted function __invoke(_VSTD::move(_VSTD::get<1>(__t)), _VSTD::move(_VSTD::get<_Indices>(__t))...);

原因是C++11构造函数中传入时要求必须是引用,不然会调用move方法,而move方法已经弃用

需要改为(传入引用):

std::thread t1(std::ref(do_detect), std::ref(vector1), std::ref(face1), std::ref(pic_paths1));

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容