QtConcurrent-BlockingMapped-Other-Object-Member-Function-Operator

From Qt Wiki
Jump to: navigation, search

This Demonstrates how to pass each object in the container to a member function of different class instance. You can alternatively do this using boost::bind

  1. include <QtConcurrentMap>
  2. include <QVector>
  3. include <boost/bind.hpp>
  4. include <iostream>

class Object{};

class MyClass { public:

float operator()(const Object& object) { return 1.0f; }
typedef float result_type;

};

int main() {

QVector<Object> v;
Object a;
v.push_back(a);
MyClass myClass;
QVector<float> result = QtConcurrent::blockingMapped<QVector<float> >(v.begin(), v.end(), myClass);
std::cout << result[0] << std::endl;
return 0;

}