"C2009: マクロの仮引数リストで 'a' が 2 回以上使われています" に関する原因と対処

このコンパイルエラーの原因と対処に関して説明します。

スポンサード リンク

Microsoft Visual C++にて以下のソースでコンパイルエラーが発生します:

コンパイルエラーメッセージ:
error C2009: マクロの仮引数リストで 'a' が 2 回以上使われています。

ソース(バグ有り):

#define TEST(a,a) (a*a)

int main()
{
}


原因:
マクロの仮引数として同じ引数が使用されています。

この例では a という仮引数が2回使用されています。

対処:
重複する仮引数を解消します。


ソース(修正済み):

#define TEST(a,b) (a*b)

int main()
{
}

スポンサード リンク



[コンパイルエラーコード、メッセージに戻る]