我需要在另一个类文件中使用该函数作为线程
int main()
{
master t;
boost::thread t1(boost::bind(t.start, "exampl"));
t1.join();
}
我有一个班级master
和一个函数start
..我需要传递一个值并运行
我在同一个班级使用它,它工作正常......任何人都可以告诉我我错在哪里
答案 0 :(得分:7)
您需要将成员函数绑定到实例:
boost::thread t1(boost::bind(&master::start, t, "exampl"));
答案 1 :(得分:0)
James的解决方案将复制您的主对象。如果你想按引用排序,那么
boost::thread t1(boost::bind(&master::start, &t, "exampl"));
HTH