que he visto el siguiente código:uso de `else` en las macros
#define QL_REQUIRE(condition,message) \
if (!(condition)) { \
std::ostringstream _ql_msg_stream; \
_ql_msg_stream << message; \
throw QuantLib::Error(__FILE__,__LINE__, \
BOOST_CURRENT_FUNCTION,_ql_msg_stream.str()); \
} else
Ésta es la forma en que suponemos para usarlo.
void testingMacros1(){
double x =0.0;
QL_REQUIRE (x!=0 ," Zero number !");
}
Asumo la else
en el extremo tiene un cierto uso especial.
Pregunta> ¿Cuál es el uso de else
adjunto al final de esta definición de macros?
Gracias
Mira el uso ampliado de dicha macro. La sintaxis de C++ tiene que ser válida después del CPP; así que mirarlo en contexto debería revelar el "por qué". –
@pst, he publicado un uso de la macro. – q0987