C++11 QtConcurrent::run()调用另一个类方法

C++11 QtConcurrent::run()调用另一个类方法,c++11,qt5,unique-ptr,qtconcurrent,C++11,Qt5,Unique Ptr,Qtconcurrent,我试图使用QTConcurrent类异步启动某些任务,但出现了一些错误: 这是我的代码: class A { public: void method1(); }; class B { std::unique_ptr<A> ptr; public: void method2() { QtConcurrent::run(&this->ptr, &A::method1); } } A类{ 公众: void方法1(); }; B类{ st

我试图使用QTConcurrent类异步启动某些任务,但出现了一些错误:

这是我的代码:

class A {
  public:
  void method1();
};
class B {
 std::unique_ptr<A> ptr;
 public:
  void method2() {
     QtConcurrent::run(&this->ptr, &A::method1);
  }
}
A类{
公众:
void方法1();
};
B类{
std::唯一的ptr ptr;
公众:
void方法2(){
QtConcurrent::run(&this->ptr,&A::method1);
}
}
我发现编译错误

有人能告诉我正确的语法是什么吗


提前感谢并问候

我终于找到了工作版本:

class A {
 public:
 void method1();
};
class B {
  std::unique_ptr<A> ptr;
 public:
  void method2() {
    QtConcurrent::run(this->ptr.get(), &A::method1);
  }
}
A类{
公众:
void方法1();
};
B类{
std::唯一的ptr ptr;
公众:
void方法2(){
QtConcurrent::run(this->ptr.get(),&A::method1);
}
}

Class
B
没有名为
\u xdmService
的成员。未声明名称
pttpxmservice
。难怪在这个例子中会出现编译错误。