无法将参数传递给线程函数
Can't pass arguments to thread function
好的,我正在尝试在 c++ 中创建一个线程来运行该函数storePose();
该函数将九个参数作为双精度。每次我尝试创建线程时,它都会抱怨参数。我将在下面发布我的代码。我不知道为什么这行不通。提前致谢
法典:
std::thread t(storePose,x_position, y_position, z_position, azimuth, att_pitch, att_roll, yaw, cam_pitch, cam_roll);
t.detach();
给出的错误:
12 IntelliSense: no instance of constructor "std::thread::thread" matches the argument list
argument types are: (<unknown-type>, double, double, double, double, double, double, double, double, double)
编辑:对不起,我忘了提到我正在使用Visual Studio 2012
Microsoft Visual C++ (2012) 不支持可变参数模板。他们有一种叫做人造变频器的东西,它通过宏消除过载。问题是可以传递给可变参数模板的参数数量有限制,默认情况下该限制为 5。您可以通过将_VARIADIC_MAX
定义为较大的数字来调整限制(例如,对于 10 个设置的限制/D_VARIADIC_MAX=10
)
看到这个和这个。
参数
太多,将它们放在结构中,并将结构提供给线程函数并处理结构中的参数。
相关文章:
- C++使用params创建线程函数会导致转换错误
- 如何在大函数中编写多线程函数?
- C++11:将矢量元素作为线程传递到线程函数中
- 线程函数中的c++参数更改
- 我需要线程函数在不停止实际程序的情况下,每2秒打印一次随机数
- 在多线程函数中返回共享的常量指针会导致计时问题吗?
- 将项目插入 CTreeCtrl 时线程函数的奇怪行为
- C++ 线程函数通过引用传递
- 线程函数参数的前向声明不起作用
- 线程函数无法从堆上分配的缓冲区中读取字符
- 线程函数不打印
- C :如何在复杂模板类中指定线程函数
- 为什么我在C++线程函数调用中得到重复值?
- C++ 线程函数指针实现返回错误无效使用非静态成员函数
- 线程函数中的通用引用
- 如何同时启动两个具有不同线程函数的线程团队
- std::c++ 中的线程在设置线程函数时不会出错
- 对抽象类的引用不能传递给线程函数?
- 如何将ifstream作为参数传递给std ::线程函数
- 如何线程函数