Declare: многострочное макроопределение |
<оператор-многострочного-макроопределения> = #declare <Имя> <многострочный-текст> #end
Задает значение многострочного макроопределения без параметров с идентификатором <имя>.
<оператор-многострочного-макроопределения-с-параметрами> = #declare <имя> (<параметр-1>, ...) <многострочный-текст> #end
Задает значение многострочного макроопределения с идентификатором <имя> и параметрами <параметр-i>. Между идентификатором макроопределения <имя> и началом списка параметров допускается использование пробельных символов. Как и в операторе однострочного определения, допускается задание параметров по умолчанию.
Использование оператора макроопределения с идентификатором, совпадающим с идентификатором одного из определенных ранее макроопределений, рассматривается как ошибка в том случае, если это многострочные определения или если их значения не совпадают.
Не допускается использование директив макрокомпилятора внутри макроопределения, например:
#declare MacroMsg #ifdef MacroErr #error Ошибка компиляции: #MacroErr #else #info Компиляция прошла успешно #end #end