QtConcurrent-BlockingMapped-Member-Function-of-iterated-objects

From Qt Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

This demonstrates how to call a member function on each item in the container and get a collection of the return values.

#include <QtConcurrentMap>
#include <QVector>
#include <iostream>

class MyClass
{
public:
  float Test() const { // Note, this function MUST be const!
   return 1.0f;
  }
};

int main() {
 QVector<MyClass> v;
 MyClass a;
 v.push_back(a);
 QVector<float> result = QtConcurrent::blockingMapped<QVector<float> >(v.begin(), v.end(), &MyClass::Test);
 return 0;
}