我想使用boost ::线程在我的计划,但得到以下编译器错误(Visual Studio 2005中):升压:螺纹 - 编译器错误
Error 1 **error C2064**: term does not evaluate to a function taking 0
arguments d:\...\boost_1_37_0\boost\thread\detail\thread.hpp 56
所以我试图重新创建一个小问题程序并修改了从this site开始工作的Hello World示例。
我的测试代码现在看起来像这样。为什么不是一类?:
#include <boost/thread.hpp>
#include <iostream>
class HelloWorld
{
public:
void hello();
void entry();
};
void HelloWorld::entry()
{
boost::thread thrd(&HelloWorld::hello);
thrd.join();
}
void HelloWorld::hello()
{
std::cout << "Hello world, I'm a thread!" << std::endl;
}
int main(int argc, char* argv[])
{
HelloWorld *bla = new HelloWorld;
bla->entry();
return 0;
}
非常感谢你!它现在适用于您的解决方案。 /mspoerr – mspoerr 2009-02-13 15:48:01