Макрос с переменным числом параметров. Как?
От: push  
Дата: 12.11.12 16:35
Оценка:
Возникла необходимость в макросе с переменным числом параметров. Что-то типа такого (псевдокод):

#define AAA(a1)           BBB(a1);

#define AAA(a1)           BBB(a1);    \
                          BBB(a1);

#define AAA(a1, a2, a3)   BBB(a1);    \
                          BBB(a2);    \
                          BBB(a3);
// и т.д.


Использовать планируется так:

AAA(obj.Do1(),
    obj.Do2(),
    obj.Do3()
   );


Ожидаемый вывод:

BBB(obj.Do1());
BBB(obj.Do2());
BBB(obj.Do3());


Поковырял boost::preprocessor но прояснение не наступило, слишком муторная там документация. Как сделать макрос с переменным количеством параметров?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.