Я видел простые примеры макросов, но мне интересно что-то более сложное, скажем, с операторами if и переназначением заданных переменных. Можно ли сделать более сложные выражения, подобные этому, в макросе? У меня есть функция, которая будет запускаться миллиарды раз, поэтому было бы неплохо, чтобы препроцессор просто добавлял туда код, а не передавал переменные туда и обратно.
Скажем, у меня есть следующая функция:
int foo(int a, int b, int c){
if (a > 2)
c = a;
if (b > 3)
c = b;
return a + b + c;
}
Как сделать из этого макрос?
int
,long
иdouble
(в любой комбинации)? - person R.. GitHub STOP HELPING ICE   schedule 06.02.2011