0

我遇到了多线程和多文件项目的问题。在使用单个文件项目进行测试时工作正常,但是当我试图将我的标题与我的实施分开时,有没有办法让它工作?

我得到的错误是:错误 C3867:'class1::Update':函数调用缺少参数列表;使用 '&class1::Update' 创建指向成员的指针

可悲的是,那里的建议不起作用。任何帮助将不胜感激。

1.H级

class class1
{
public:
    class1();
    ~class1();


private:
    thread sThread;
    void Update();
};

Class1.cpp

int class1::Initialize()
{
    this->sThread = std::thread(Update);
}
4

1 回答 1

1

正如你所说,错误是:

'class1::Update': function call missing argument list; use '&class1::Update' to create a pointer to member

就这样做吧。一旦你这样做了,你会发现你需要使用std::bind()该类的一个实例来附加到成员函数上。这看起来像:

thread(bind(&class1::Update, this))
于 2013-04-27T04:03:11.750 回答