Estoy estudiando la cuarta edición de C++ Primer por Stanley B. Lippman. En la sección 12.4.1, cuando el autor habla de inicializadores del constructor, que le da a este ejemplo:¿Este inicializador de constructor causa una referencia colgante?
class ConstRef {
public:
ConstRef(int ii);
private:
int i;
const int ci;
int &ri;
};
// OK: explicitly initialize reference and const members.
ConstRef::ConstRef(int ii): i(ii), ci(i), ri(ii) { }
Sospecho que esto puede causar un colgante de referencia ri
apuntando a ii
, que es un temporal. ¿Estoy en lo cierto?
sonido metálico ++ es real útil: 'advertencia: la unión miembro de referencia 'ri' a pila asignado parámetro 'II' [-campo -Wdangling]' – Mat
Habiendo googled alrededor para ver lo que se siente, las miradas de informes de error realmente grandioso. – chanp