在 C++ 中,引用 也可以用作 函数返回值,使用引用做函数返回值的最大好处是,在内存中不产生被返回值的副本。
以引用返回函数值,定义函数时需要在函数名前加 &。
type &funcName(paramlist)
我们定义了一个函数 funcName,其返回值为 type 类型的引用。
定义 C++ 引用做函数返回值
#include <iostream>
using namespace std;
float s;
float &Circle(float r)
{
s = 3.14 * r * r;
return s;
}
int main()
{
cout << "嗨客网(www.haicoder.net)\n" << endl;
float r = 10.0;
Circle(r);
cout << "S = " << s << endl;
return 0;
}
程序运行后,控制台输出如下图所示:
我们定义了一个函数 Circle,该函数返回了一个引用,因此,返回值没有重新生成副本。
在 C++ 中,引用也可以用作函数返回值,使用引用做函数返回值的最大好处是,在内存中不产生被返回值的副本。
引用做函数返回值时,不能返回局部变量的引用,不能返回函数内部 new 分配的内存的引用,可以返回类成员的引用,但最好是 const。