08.06.2005, 11:16 | #1 |
Участник
|
Условные директивы в макросах
Никак не могу понять как пользоваться директивой #if.<macro variable>
Например код приведенный ниже работает: PHP код:
Есть ли какой-нибудь способ использовать условные директивы в любом месте кода. |
|
08.06.2005, 12:25 | #2 |
Moderator
|
В строке с #define в конце не требуется (а в данном случае - мешает) ставить точку с запятой, синтаксис такой...
__________________
Андрей. |
|
08.06.2005, 12:42 | #3 |
Участник
|
Всё работает как надо!
void clicked() { ; #localmacro.testMacro #define.arg(%1) #if.arg(2) Info("2"); #endif #undef.arg #endmacro info(" dsfdfs "); #testMacro(2) super(); } Ты просто поставь " ; " и будет тебе счастье |
|
08.06.2005, 16:57 | #4 |
Участник
|
Неа, счастье отменяется
PHP код:
На самом деле, задача была следующая: в некий навороченный select нужно было добавлять where-условие либо не добавлять в зависимости от параметра диалога. Через if выглядело некрасиво, видимо придется через Query. Отсюда вопрос - есть ли разница по производительности между двумя этими подходами. |
|
08.06.2005, 17:08 | #5 |
Участник
|
Цитата:
Изначально опубликовано malex в некий навороченный select нужно было добавлять where-условие либо не добавлять в зависимости от параметра диалога.
where ... && (table.field == parm || ! parm) ... |
|
08.06.2005, 17:47 | #6 |
Участник
|
Цитата:
Изначально опубликовано ALES
Не вижу препятствий where ... && (table.field == parm || ! parm) ... ... (inventTrans.TransType == emumParm && notAllBooleanParm || !notAllBooleanParm) && ... Thanks |
|