As @Borisbn said you can do it like this:
template<typename type > void checkParameter( type val, type lower, type upper) { if( ( val > upper) || ( val < lower) ) { log("checkParameter, val = % , lower= % , upper= % \n", val, lower,upper ); ASSERT(false); } }
EDIT
I think you could do it like this:
template<bool A, bool B, bool C> struct test { template < typename T1, typename T2, typename T3> void parameters (T1, T2, T3) { } }; template<> struct test<true, true, true> {
source share