在下面的代码中,我没有使用for循环,而是想实现一行代码,它将使用特征库函数,并帮助代码本身向量化,从而使通过OpenMP的并行化变得容易。Eigen::VectorXd get_vector(int n, int j , int start){ indices = Eigenindices(i)) - array(j))*(array(indices(i)) - array(j));
OpenMP标准只考虑ISO98( C++ 14882:1998)。这意味着在C++03甚至C++11下没有支持OpenMP用法的标准。因此,任何使用C++ >98和OpenMP的程序都在标准之外运行,这意味着即使它在某些条件下工作,它也不太可能是可移植的,但绝对不能保证。对于具有自己的多线程支持的C++11,情况甚至更糟,这很可能会在某些实现中与OpenMP发生冲突。
那么