コードを生成する x マクロを作成したいと考えています。コードはいくつかのヘッダーに依存しており、名前空間内で生成されることを意図しています。
問題は、xmacro のインクルードが呼び出し元の名前空間内に含まれていることです。これを修正する方法はありますか?
例:
xmacro.hpp:
#include "foo.hpp"
struct bar {
BODY
};
#undef BODY
main.hpp:
namespace ns {
#define BODY int func();
#include "xmacro.hpp" // inserting foo.hpp inside namespace ns
}