QtConcurrent-BlockingMapped-Member-Function-of-iterated-objects: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
This demonstrates how to call a member function on each item in the container and get a collection of the return values.<br /><code><br />#include &lt;QtConcurrentMap&amp;gt;<br />#include &lt;QVector&amp;gt;
[[Category:HowTo]]
This demonstrates how to call a member function on each item in the container and get a collection of the return values.
<code>
#include <QtConcurrentMap>
#include <QVector>
#include <iostream>


#include &lt;iostream&amp;gt;
class MyClass
{
public:
  float Test() const { // Note, this function MUST be const!
  return 1.0f;
  }
};


class MyClass<br />{<br />public:<br /> float Test() const // Note, this function MUST be const!<br /> {<br /> return 1.0f;<br /> }<br />};
int main() {
 
QVector<MyClass> v;
int main()<br />{<br /> QVector&amp;lt;MyClass&amp;gt; v;<br /> MyClass a;<br /> v.push_back(a);
MyClass a;
 
v.push_back(a);
QVector&amp;lt;float&amp;gt; result = QtConcurrent::blockingMapped&amp;lt;QVector&amp;lt;float&amp;gt; &gt;(v.begin(), v.end(), &amp;MyClass::Test);
QVector<float> result = QtConcurrent::blockingMapped<QVector<float> >(v.begin(), v.end(), &MyClass::Test);
 
return 0;
return 0;<br />}
}
</code>

Latest revision as of 21:49, 7 April 2016

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;
}