En este artículo, aprenderá cómo devolver un valor por referencia en una función y cómo usarlo de manera eficiente en su programa.
En Programación C ++, no solo puede pasar valores por referencia a una función, sino que también puede devolver un valor por referencia.
Para comprender esta característica, debe tener el conocimiento de:
- Variables globales
Ejemplo: retorno por referencia
#include using namespace std; // Global variable int num; // Function declaration int& test(); int main() ( test() = 5; cout << num; return 0; ) int& test() ( return num; )
Salida
5
En el programa anterior, el tipo de función de retorno test()
es int&
. Por tanto, esta función devuelve una referencia de la variable num.
La declaración de devolución es return num;
. A diferencia de la devolución por valor, esta declaración no devuelve el valor de num, sino que devuelve la propia variable (dirección).
Entonces, cuando se devuelve la variable , se le puede asignar un valor como se hizo entest() = 5;
Esto almacena 5 en la variable num, que se muestra en la pantalla.
Cosas importantes para recordar al devolver por referencia.
- La función ordinaria devuelve un valor, pero esta función no. Por lo tanto, no puede devolver una constante de la función.
int & test () (return 2;)
- No puede devolver una variable local desde esta función.
int & test () (int n = 2; return n;)