原文: https://www.programiz.com/cpp-programming/return-reference
在 C++ 编程中,不仅可以通过引用将值传递给函数,而且还可以通过引用返回值。
要了解此功能,您应该了解以下内容:
#include <iostream>
using namespace std;
// Global variable
int num;
// Function declaration
int& test();
int main()
{
test() = 5;
cout << num;
return 0;
}
int& test()
{
return num;
}输出
5在上面的程序中,函数test()的返回类型为int&。 因此,此函数返回变量num的引用。
返回语句为return num;。 与按值返回不同,此语句不返回num的值,而是返回变量本身(地址)。
因此,当返回变量时,可以像在test() = 5;中所做的那样为其分配一个值。
这会将 5 存储到显示在屏幕上的变量num中。
-
普通函数返回值,但此函数不返回。 因此,您不能从函数返回常量。
int& test() { return 2; }
-
您不能从此函数返回局部变量。
int& test() { int n = 2; return n; }