На днях я пытался использовать макрос для определения такой функции (упрощенно, очевидно):
#define DEF_ADD(name) \
int add_name(int x, int y) { \
return x + y; \
} \
Теперь я ожидал, что фрагмент DEF_ADD(hello)
определит функцию add_hello
. Однако вместо этого вызов макроса определяет функцию с именем add_name
. Я ожидаю, что это как-то связано со сканированием, но я не смог найти способ воссоздать искомое поведение. Есть идеи как это сделать?