Не вдаваясь в детали gory, я хочу использовать макрос #define
, который будет расширяться до #include
, но знак '#' путает препроцессор (поскольку он считает, что я хочу привести аргумент.)
Например, я хочу сделать что-то вроде этого:
#define MACRO(name) #include "name##foo"
И используйте его таким образом:
MACRO(Test)
который будет расширяться до:
#include "Testfoo"
Смиренный знак # вызывает препроцессор barf. MinGW дает мне следующую ошибку:
'#' is not followed by a macro parameter
Думаю, мне нужно сбегать от знака #, но я этого не сделаю, если это возможно.
Да, макросы действительно злы...