Я хотел бы написать макрос препроцессора, который делает одно, если этот аргумент представляет собой скопированный токены токенов, например:
MY_MACRO((x, y))
и что-то еще, если это всего лишь один токен, например:
MY_MACRO(x)
Возможно ли это?
Как насчет различия между количеством разделенных пространством токенов, то есть между MY_MACRO(x)
и MY_MACRO(x y)
?
Обратите внимание, что я не пытаюсь перегрузить на основе количества аргументов - во всех случаях это унарный макрос.
EDIT: я готов использовать переменные макросы, если они помогают