in

Referencias de C ++


Una variable de referencia es un alias, es decir, otro nombre para una variable ya existente. Una vez que se inicializa una referencia con una variable, se puede usar el nombre de la variable o el nombre de la referencia para hacer referencia a la variable.

Referencias vs punteros

Las referencias a menudo se confunden con punteros, pero las tres diferencias principales entre referencias y punteros son:

  • No puede tener referencias NULL. Siempre debe poder asumir que una referencia está conectada a una pieza de almacenamiento legítima.

  • Una vez que se inicializa una referencia a un objeto, no se puede cambiar para hacer referencia a otro objeto. Los punteros pueden apuntar a otro objeto en cualquier momento.

  • Una referencia debe inicializarse cuando se crea. Los punteros se pueden inicializar en cualquier momento.

Creando referencias en C ++

Piense en un nombre de variable como una etiqueta adjunta a la ubicación de la variable en la memoria. A continuación, puede pensar en una referencia como una segunda etiqueta adjunta a esa ubicación de memoria. Por lo tanto, puede acceder al contenido de la variable a través del nombre de la variable original o la referencia. Por ejemplo, supongamos que tenemos el siguiente ejemplo:

int i = 17;

Podemos declarar variables de referencia para i de la siguiente manera.

int& r = i;

Lea el & en estas declaraciones como referencia. Por lo tanto, lea la primera declaración como «r es una referencia entera inicializada en i» y lea la segunda declaración como «s es una referencia doble inicializada en d». El siguiente ejemplo hace uso de referencias en int y double:

#include <iostream>
 
using namespace std;
 
int main () {
   // declare simple variables
   int    i;
   double d;
 
   // declare reference variables
   int&    r = i;
   double& s = d;
   
   i = 5;
   cout << "Value of i : " << i << endl;
   cout << "Value of i reference : " << r  << endl;
 
   d = 11.7;
   cout << "Value of d : " << d << endl;
   cout << "Value of d reference : " << s  << endl;
   
   return 0;
}

Cuando el código anterior se compila y se ejecuta, produce el siguiente resultado:

Value of i : 5
Value of i reference : 5
Value of d : 11.7
Value of d reference : 11.7

Las referencias se utilizan generalmente para listas de argumentos de funciones y valores de retorno de funciones. Por lo tanto, a continuación se muestran dos temas importantes relacionados con las referencias de C ++ que deberían ser claros para un programador de C ++:

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Novabench 4.0

Compruebe el rendimiento de su PC con el nuevo Novabench 4.0

apple touch icon@2

Establecer estilo usando JavaScript puro