共用方式為


編譯器錯誤 C3039

'var': OpenMP 'for' 陳述式中的索引變數不可為削減變數

索引變數是隱含私用,因此變數不能用於封入 parallel 指示詞的 reduction 子句中。

範例

下列範例會產生 C3039:

// C3039.cpp
// compile with: /openmp /c
int g_i;

int main() {
   int i;

   #pragma omp parallel reduction(+: i)
   {
      #pragma omp for
      for (i = 0; i < 10; ++i)   // C3039
         g_i += i;
   }
}