コンパイラ エラー C3041
'var': 'copyprivate' 句の変数は、それを囲むコンテキスト内でプライベートである必要があります
copyprivate に渡された変数は、それを囲むコンテキスト内で共有できません。
次の例では C3041 が生成されます。
// C3041.cpp
// compile with: /openmp /c
#include "omp.h"
double d;
int main() {
#pragma omp parallel shared(d)
// try the following line instead
// #pragma omp parallel private(d)
{
// or don't make d copyprivate
#pragma omp single copyprivate(d) // C3041
{
}
}
}