std::function::operator bool
De cppreference.com
< cpp | utility | functional | function
explicit operator bool() const noexcept; |
(desde C++11) | |
Comprueba si *this almacena un destino de función invocable, es decir, no está vacío.
Contenido |
[editar] Parámetros
(Ninguno)
[editar] Valor de retorno
true if *this almacena un destino de función invocable, false de lo contrario.
[editar] Ejemplo
Ejecuta este código
#include <functional> #include <iostream> void funcMuestra() { std::cout << "¡Esta es la función muestra!\n"; } void comprobarFunc( std::function<void()> const &func ) { // Usa operator bool para determinar si el destino invocable está disponible. if( func ) { std::cout << "¡La función no está vacía! Llamando a la función.\n"; func(); } else { std::cout << "La función está vacía. Nada que hacer.\n"; } } int main() { std::function<void()> f1; std::function<void()> f2( funcMuestra ); std::cout << "f1: "; comprobarFunc( f1 ); std::cout << "f2: "; comprobarFunc( f2 ); }
Salida:
f1: La función está vacía. Nada que hacer. f2: ¡La función no está vacía! Llamando a la función. ¡Esta es la función muestra!
[editar] Véase también
(C++23) |
Verifica si la instancia de std::move_only_function tiene un objetivo. (función miembro pública de std::move_only_function<R(Args...) cv ref noexcept(noex)> )
|