Скажите в заголовке, который я не хочу читать сам, но который я действительно включаю, у меня есть
#define A B
#define B C
Теперь
#define STR(name) # name
определяет макрос, который дает мне имя любого макроса в виде строки, а
#define EXP_STR(name) STR(name)
определяет макрос, который дает мне полное расширение любого макроса в виде строки. Так
cout << STR(A) << EXP_STR(A) << endl;
напечатает AC
.
Есть ли способ получить "B"
из A
с помощью некоторых макросов?