#include #include #include using namespace std; class Functor { array &d_data; int d_value; public: Functor(array &data, int value) : d_data(data), d_value(value) {} void operator()(ostream &out) { for (auto &value: d_data) { value = d_value++; out << value << ' '; } out << '\n'; } }; int main() { array data; Functor functor{ data, 5 }; thread funThread{ functor, ref(cout) }; funThread.join(); };