Вызывается ли вообще в оптимизированном коде пустая функция?

Если макрос TEST не определен, я хотел бы знать, есть ли разница в производительности в этих двух частях кода:

void Func1(int a) {
    ...
}

#ifdef TEST
Func1(123);
#endif

и:

void Func2(int a) {
#ifdef TEST
    ...
#endif
}

Func2(123);

Если TEST не определен, Func2 станет пустой функцией, которую компилятор вообще не должен вызывать, не так ли?

Спасибо.

12
задан Pietro 1 July 2011 в 11:39
поделиться