Estoy confundido acerca de las ventajas del uso de las lasVentajas del uso de MPL impulso :: :: bool_ en lugar de un int const
bool_<true>
y
bool_<false>
tipos contra el simple uso de Bools const en el contexto de la metaprogramación de plantillas.
La biblioteca boost :: mpl claramente prefiere el primer enfoque, y define funciones auxiliares como and_, or_ para ayudar a administrar tal bool_. Las metafunciones condicionales como if_ "toman" un bool_ como primer argumento (plantilla), pero detrás de las escenas "llaman" a una metafunción if_c que espera un (const) bool como primer argumento (plantilla).
¿Cuáles son los argumentos detrás de esta decisión?
Gracias de antemano por su ayuda!
¡Gracias, ese es un buen ejemplo! – stepelu
¡Oh, sí, me olvidé de sobrecargar! – sbi
Esta es una buena respuesta, pero es mucho más detallada de lo necesario. Puede escribir 'do_something (boost :: is_pointer())', que hará lo mismo de la misma manera. –