编译器错误 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
      {
      }
   }
}