Regreso de funciones vacías en C++

Las funciones nulas se conocen como funciones que no devuelven valor . Son «vacíos» debido al hecho de que no se supone que devuelvan valores. Cierto, pero no del todo. No podemos devolver valores, pero hay algo que seguramente podemos devolver de las funciones vacías. Las funciones vacías no tienen un tipo de devolución, pero pueden devolver valores. Algunos de los casos se enumeran a continuación:
 
1) Una función Void puede devolver: simplemente podemos escribir una declaración de devolución en un void fun(). De hecho, se considera una buena práctica (para la legibilidad del código) escribir una devolución; declaración para indicar el final de la función. 

CPP

// CPP Program to demonstrate void functions
#include <iostream>
using namespace std;
  
void fun()
{
    cout << "Hello";
  
    // We can write return in void
    return;
}
  
// Driver Code
int main()
{
    fun();
    return 0;
}
Producción

Hello

2) A void fun() puede devolver otra función void:  una función void también puede llamar a otra función void mientras está terminando. Por ejemplo, 

CPP

// C++ code to demonstrate void()
// returning void()
#include <iostream>
using namespace std;
  
// A sample void function
void work()
{
    cout << "The void function has returned "
            " a void() !!! \n";
}
  
// Driver void() returning void work()
void test()
{
    // Returning void function
    return work();
}
  
// Driver Code
int main()
{
    // Calling void function
    test();
    return 0;
}
Producción

The void function has returned  a void() !!! 

El código anterior explica cómo void() puede ser realmente útil para devolver funciones nulas sin dar errores.
 
3) Un void() puede devolver un valor nulo: Un void() no puede devolver un valor que se pueda usar. Pero puede devolver un valor que es nulo sin dar un error. Por ejemplo,

CPP

// C++ code to demonstrate void()
// returning a void value
#include <iostream>
using namespace std;
  
// Driver void() returning a void value
void test()
{
    cout << "Hello";
  
    // Returning a void value
    return (void)"Doesn't Print";
}
  
// Driver Code
int main()
{
    test();
    return 0;
}
Producción

Hello

Este artículo es una contribución de Manjeet Singh . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks. Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *