コンパイラ エラー C3027
'clause' : 演算またはポインター式が必要です
演算またはポインター式を必要とする句に、別の種類の式が渡されました。
例
次の例では C3027 が生成されます。
// C3027.cpp
// compile with: /openmp /link vcomps.lib
#include <stdio.h>
#include "omp.h"
struct MyStruct
{
int x;
} m_MyStruct;
int main()
{
int i;
puts("Test with class MyStruct:\n");
#pragma omp parallel for if(m_MyStruct) // C3027
for (i = 1; i <= 2; ++i)
printf_s("Hello World - thread %d - iteration %d\n",
omp_get_thread_num(), i);
puts("Test with int:\n");
#pragma omp parallel for if(9) // OK
for (i = 1; i <= 2; ++i)
printf_s("Hello World - thread %d - iteration %d\n",
omp_get_thread_num(), i);
}