📜  从 C++ 中的 void 函数返回

📅  最后修改于: 2022-05-13 01:55:51.596000             🧑  作者: Mango

从 C++ 中的 void 函数返回

无效函数被称为非值返回函数。它们是“无效的”,因为它们不应该返回值。是的,但不完全。我们不能返回值,但我们肯定可以从 void 函数返回一些东西。 void 函数没有返回类型,但它们可以返回值。部分案例列举如下: 1) 一个 void函数可以返回:我们可以简单地在 void fun() 中编写一个返回语句。事实上,编写返回值被认为是一种很好的做法(为了代码的可读性);语句来指示函数的结束。

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


CPP
// C++ code to demonstrate void()
// returning void()
#include 
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;
}


CPP
// C++ code to demonstrate void()
// returning a void value
#include 
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;
}


输出
Hello

2) void fun() 可以返回另一个 void函数:一个 void函数也可以在终止时调用另一个 void函数。例如,

CPP

// C++ code to demonstrate void()
// returning void()
#include 
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;
}
输出
The void function has returned  a void() !!! 

上面的代码解释了 void() 如何在不给出错误的情况下返回 void 函数。 3) void() 可以返回一个 void 值:一个 void() 不能返回一个可以使用的值。但它可以返回一个 void 的值而不给出错误。例如,

CPP

// C++ code to demonstrate void()
// returning a void value
#include 
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;
}
输出
Hello