関数を定義しようとしています
template<typename Functor> static void start(DataSize size, ThreadNum threadNum, Functor f)
{
....
std::for_each<int>(allocated, size, f);
....
}
割り当てられ、サイズはちょうど int です。
呼び出し元が関数を呼び出す
start(image.width() * image.height(), _threads, RGBHistogramFun<T>(image, hist));
と
template<typename T> class RGBHistogramFun
{
...
void operator()(std::size_t i)
{
....
}
}
テンプレートの T を int に設定します。サイズに割り当てられた各整数に対して RGBHistogramFun::operator(std::size_t i) を呼び出すように std::for_each を定義しようとしています。operator() は、インデックスを使用して内部配列データを操作します。
ただし、xutility に関するコンパイラ エラーが発生します。