大家好,我正在尝试使用cilk plus reducer做一个简单的find min操作。出于某种奇怪的原因,我能够包含reducer_min库,但无法使用calc_min函数。有人知道我为什么收到此错误吗?
47:错误:“类cilk :: reducer_min_index”没有名为“ calc_min”的成员
#include <cilk.h>
#include <reducer_min.h>
#include <iostream>
void findMin(int *d, int *v)
{
int nv, totalnv;
*d = largeint;
cilk::reducer_min_index<unsigned,int> min;
cilk_for (int i = 0; i < totalnv ; i++)
{
if(notdone[i] && mind[i] < min.get_value())
{
min.calc_min(i,ohd[i]);
}
}
cilk_sync;
*v = min.get_index();
*d = min.get_value();
}
任何建议将不胜感激!
最佳答案
您可能需要将i强制转换为无符号,以适合模板cilk::reducer_min_index<unsigned,int>
。
因此,将min.calc_min(i,ohd[i]);
替换为min.calc_min((unsigned)i,ohd[i]);
资料来源:Source code
关于c++ - 找不到reducer_min_index的calc_min函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20294798/