次のユースケースがあります
#define ConstantDouble( T )\
T( Alert, c_alert )
// I want to generate #define macro's dynamically
#define T( x, y ) #define #x y <-- Error
ConstantDouble( T )
#undef T
#define Constant( x ) Constants::x ; <-- x is Alert and I want the prev #define to kick in and convert this to c_alert
// Want to generate members variables directly
class Constants
{
#define T( x, y ) static double y;
ConstantDouble( T )
#undef T
};
これには回避策がありますか?
私の名前にこのようなものを入れたいです
Constant( "Alert" )
に変換されますConstants::c_alert;