#define PATH "yagh/headers/"
#define FILNAME "includefile"
#define CONCAT(a__, b__) CONCAT_DO(a__, b__)
#define CONCAT_DO(a__, b__) a__##b__
#define CONCATTHREE(a__, b__, c__) CONCAT(CONCAT(a__, b__), c__)
#define STRINGIFY(a__) #a__
#include STRINGIFY(CONCATTHREE(PATH ,FILNAME ,.h));
このマクロは VS コンパイラでは問題なく動作しますが、GCC コンパイラではコンパイルされません。
エラー: エラー: "/" と "includefile" を貼り付けても、有効な前処理トークンが得られません
一部のインクルード ファイルでは、エラーが発生します。
エラー: 「includefile」と「.」を貼り付けています。有効な前処理トークンを与えません