当我执行我的代码时,我得到的输出是:
错误:无效的控制谓词
我知道问题是"!=“
我是否知道如何重写for循环中的条件,使其运行到数组的最后一个元素
typedef pair<double,double> point;
vector<point> smallline;
#pragma omp parallel num_threads(8)
{
#pragma omp for
for (vector< vector<point> >::const_iterator it1 = lines.begin(); it1!= lines.end(); it1++){
smallline = (*it1);
.
.
.
}
}
发布于 2019-05-22 05:37:37
从OpenMP版本5.0开始,您还可以将!=
习惯用法用于随机访问迭代器(请参阅OpenMP规范,第96页)。
早期的OpenMP版本只能并行简单的for
。所以,你最好的选择是:
typedef pair<double,double> point;
#pragma omp parallel num_threads(8)
{
#pragma omp for
for (int i = 0; i < lines.size(); i++){
.
.
.
}
}
https://stackoverflow.com/questions/56246648
复制相似问题