Допустим, у нас много функций модульного тестирования только для отладочной сборки. Мы вообще не хотим компилировать эти функции в сборке релиза. Есть ли какой-нибудь способ, кроме как оборачивать функции модульного теста каждый раз с #ifdef _DEBUG?
#ifdef _DEBUG
void testfunc_xxx() {
...
}
#endif
Например, у нас может быть макрос
#ifdef _DEBUG
#define UNITTESTFUNC(name) void name()
#else
#define UNITTESTFUNC(name) template<typename T> void name()
#endif
UNITTESTFUNC(testfunc_xxx) {
...
}
Но это зависит от задержанного анализа шаблона , Есть ли лучший способ сделать это? Спасибо!