次の方法で共有


コンパイラの警告 (レベル 4) C4204

非標準の拡張機能が使用されています: 定数でない初期化子の集合です

Microsoft 拡張機能 (/Ze) を使用すると、定数ではない値を使用して集計型 (配列、構造体、共用体、クラス) を初期化できます。

// C4204.c
// compile with: /W4
int func1()
{
   return 0;
}
struct S1
{
   int i;
};

int main()
{
   struct S1 s1 = { func1() };   // C4204
   return s1.i;
}

このような初期化は、ANSI 互換性 (/Za) では無効です。