コンパイラ エラー C2009
マクロの仮引数リストで 'identifier' が 2 回以上使われています
マクロ定義の仮パラメーター リストで識別子が複数回使用されています。 マクロのパラメーター リスト内の識別子は一意である必要があります。
例
次の例では C2009 エラーが生成されます。
// C2009.cpp
#include <stdio.h>
#define macro1(a,a) (a*a) // C2009
int main()
{
printf_s("%d\n", macro1(2));
}
考えられる解決方法:
// C2009b.cpp
#include <stdio.h>
#define macro2(a) (a*a)
#define macro3(a,b) (a*b)
int main()
{
printf_s("%d\n", macro2(2));
printf_s("%d\n", macro3(2,4));
}