I'm trying to run non-static member function in the other thread. If I go:
void *(PortManager::*innerAskPtr)() = &this->innerAsk;
QFuture<void> f = QtConcurrent::run(innerAskPtr);
it prompts that
ISO C++ forbids taking the adress of an unqualified or parenthesized non-static member function to form a pointer to member function.
but if I delete this extra reference symbol:
void *(PortManager::*innerAskPtr)() = this->innerAsk;
QFuture<void> f = QtConcurrent::run(innerAskPtr);
it goes that it
cannot convert 'PortManager::innerAsk' from type 'void (PortManager::)()' to type 'void* (PortManager::*)()`
What to add on the right side to get these extra stars (*) on the left?
But still, even if I would get there, there is always another error; about the run(T(*)()):
no matching function for call to 'run(void* (PortManager::*&)())
it's so over my head to understand how this reference got there...