次の方法で共有


コンパイラ エラー C3047

OpenMP 'sections' 領域の構造化ブロックの前には '#pragma omp section' が必要です

セクション ディレクティブによって導入されるコード ブロック内のすべてのコードは、 section ディレクティブによって導入されるコード ブロック内にある必要があります。

このエラーは、Visual Studio 2022 以降のバージョンでは廃止されています。

次の例では C3047 が生成されます。

// C3047.cpp
// compile with: /openmp /c
#include "omp.h"

int main() {
   int n2 = 2, n3 = 3;

   #pragma omp parallel
   {
      ++n2;

      #pragma omp sections
      {

         #pragma omp section
         {
            ++n3;
         }

         ++n2;   // C3047 not enclosed in #pragma omp section
      }
   }
}