次のコードは、私のVC++2010プロジェクトではコンパイルされません。
define MY_MAJOR_VERSION 20
define OLESTR_(str) L##str
define MOLE( STR ) OLESTR_(#STR)
define MAKE_STR(STR) MOLE(STR)
REGMAP_ENTRY(MAKE_STR(VERSION), MAKE_STR(MY_MAJOR_VERSION))
VERSION
マクロ定義ではなく、単なるテキストです。最後に、私は欲しい:
REGMAP_ENTRY(L"VERSION", L"20")
しかし、デバッグモードでコンパイルすると、次のようになります。
REGMAP_ENTRY(L"VERSION", LL"20")
他の状況でデバッグモードで使用したことがあるので、これはプロジェクト設定だと思いますが、この問題は発生しません。文字列化演算子にまたはを挿入させるVC++2010設定はありますL
か_T
?