std::thread operator() базового класса по указателю.
От: cruelbob  
Дата: 28.12.12 19:38
Оценка:
Есть базовый класс с виртуальным оператором вызова (operator()).


class A {
  public:
    virtual void operator()() = 0;
    virtual ~A() = 0 {}
};



есть от него наследующий и переопределяющий данный оператор


class B: public A {
  public:
    void operator()() override {
        // do something
    }
    ~B() override {
    }
};


A* a = new B();

Хотелось бы обойти написание данного кода:
std::thread t(&A::operator(),a);

Что можно сделать?
Twitter — http://twitter.com/Cruelbob
Блог — http://cruelbob.blogspot.ru/
Мыло — vlad.kolotvin@gmail.com
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.