std::thread collect_thread_ =std::move(std::thread(CollectThread_, this));
时间: 2024-01-04 18:20:41 浏览: 31
这段代码是使用C++中的std::thread创建一个线程,并将CollectThread_函数作为线程的入口点。通过std::move将线程对象collect_thread_初始化为新创建的线程对象。这样可以在后续的代码中使用collect_thread_来控制和管理这个线程。
以下是这段代码的示例:
```cpp
std::thread collect_thread_ = std::move(std::thread(CollectThread_, this));
```
相关问题
std::__throw_bad_array_new_length()' follow collect2: error: ld returned 1 exit status
这个错误通常是由于数组的长度错误引起的。当使用`new`操作符分配数组内存时,如果指定的数组长度是一个无效的值,编译器会抛出`std::__throw_bad_array_new_length()`异常。
要解决这个问题,您需要检查使用`new`操作符分配数组内存的代码,确保指定的数组长度是有效的。例如,确保数组长度是一个非负整数,并且不超过可用内存的限制。
此外,还要注意确保代码中没有其他与内存分配相关的错误。可能还有其他导致链接错误的问题,需要进一步检查您的代码和编译器输出以获取更多信息。
linux qt 打包程序报错,/home/lxy/anaconda3/lib/libQt5Widgets.so:对‘std::pmr::monotonic_buffer_resource::~monotonic_buffer_resource()@GLIBCXX_3.4.28’未定义的引用 /home/lxy/anaconda3/lib/libQt5Core.so:对‘std::__exception_ptr::exception_ptr::_M_release()@CXXABI_1.3.13’未定义的引用 /home/lxy/anaconda3/lib/libQt5Widgets.so:对‘vtable for std::pmr::monotonic_buffer_resource@GLIBCXX_3.4.28’未定义的引用 /home/lxy/anaconda3/lib/libQt5Widgets.so:对‘std::pmr::get_default_resource()@GLIBCXX_3.4.26’未定义的引用 /home/lxy/anaconda3/lib/libQt5Widgets.so:对‘std::__throw_bad_array_new_length()@GLIBCXX_3.4.29’未定义的引用 /home/lxy/anaconda3/lib/libQt5Core.so:对‘std::__exception_ptr::exception_ptr::_M_addref()@CXXABI_1.3.13’未定义的引用 collect2: error: ld returned 1 exit status
这个错误通常是由于链接器无法找到所需的库文件或库文件版本不兼容导致的。根据错误信息,似乎是缺少对 libstdc++.so.6 库的链接。你可以尝试添加以下参数来链接该库:
```
-L/usr/lib64 -lstdc++
```
如果你的系统是 32 位的,则将 -L/usr/lib64 替换为 -L/usr/lib。如果还是无法解决问题,你可以尝试更新 libstdc++ 库,或者重新编译 Qt 库。