Pregunta

Estoy confundido acerca de las declaraciones de variables con referencias.He leído algunas páginas y que me hizo más confuso, así que prefirió pedir aquí.

Me pidieron 4 preguntas en C++ de la entrevista;que uno de ellos está mal y por qué?

(1) int & n;
(2) const int & n=15;
(3) float x; const int & n =x;

Alguien podría, por favor explicar que en la incorrecta y por qué?

¿Fue útil?

Solución

tl;dr Referencias deben ser inicializadas en la declaración (ya sea directamente o en la clase de inicialización).

int& n;

Esto deja a la referencia n no inicializado.Las referencias deben ser inicializadas en la declaración.

const int& n = 15;

Nada malo aquí.La referencia a un const int es inicializado a 15.

float x; const int& n = x;

El float está bien, pero es una mala idea para ser de izquierda no inicializado.La referencia n se empieza a x (float/integral conversiones de pago), no es una gran idea.

Otros consejos

Siempre se debe inicializar una referencia.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top