编译器错误 C3047
OpenMP“sections”区域中的结构化块的前面必须是“#pragma omp section”
sections 指令所引入代码块中的任何代码必须位于 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
}
}
}