по-моему, макросы - несинтаксические конструкции.
поэтому ни области видимости, ни другие синтаксические условности их не затрагивают.
Т.е. написать его можно где угодно. Это всего лишь инструкция компилятору.
вместо каждого вызова макроса ниже определения компилятор подставляет его текст (с подстановкой параметров).
Затем получившийся после подстановок текст компилируется.
Поэтому: разницы никакой.
===========
ЗЫ Есть небольшой финт ушами с отладчиком - отладчик показывает текст ДО макроподстановки. Точки останова функционируют на исходном тексте. Других хитростей нет, вроде.
|