[C con Clase] Otra duda
Miguel Alejandro Jimenez Ramirez
cerberbero en gmail.com
Jue Mar 13 18:25:33 CET 2014
Me ha funcionado muy bien ,asi ya entiendo mas lo que es enviar un valor
por referencia y por valor.
Pero como tuve que cambiar una parte de mi codigo , ahora tengo problemas
con la lista de inicializacion de un constructor copia , mira el ejemplo:
class X
{ private:
string a;
public :
X (const &)=delete;
string getSt() const {return a;}
void *lamethode*(){ cout << "NiHao"; };
};
class machin
{ private:
*const X &refX; string b;*
public:
machin (const & )=delete;
string getb()const{return b;}
*const X& getX()const{return refX;} *
};
class XXX
{
private:
machin z;
public:
*const machin &ref**machin**;*
XXX(machin const & p):z(p){ cout<< z.getb();} // pas de problème
XXX(XXX const &){ cout<<z.getb();}
void afficher()
{* cout << ref**machin**.getX().lamethode();*
}
};
Bueno mi pregunta es en el constructor copia de XXX , el compilador me
envia un error en mi ejemplo:
uninitialized reference member 'Exemplaire::e' [-fpermissive]
Donde Exemplaire es la clase y e es un miembro privado de esta , en este
caso podemos decir que XX es Exemplaire y que z es como e.
Me dice que la inicializacion no esta bien y la verdad no se como hacerla
para que no tenga problemas en este constructor copia , me podrias ayudar
en este caso?
2014-03-13 18:05 GMT+01:00 Salvador Pozo Coronado <salvador en conclase.net>:
> Estimado Miguel,
>
> Con respecto a mi última respuesta, he cometido un error.
>
> Aunque no es necesario eliminar la memoria asignada a "list", sí lo es
> con respecto a los elementos que contiene.
>
> Tu solución del último mensaje es correcta, de este modo se recorre el
> vector y se elimina cada elemento almacenado. De otro modo se
> produciría una fuga de memoria.
>
> Entiendo que son condiciones de diseño, y que debes almacenar objetos
> creados dinámicamente mediante punteros. Pero si en lugar de eso
> almacenaras objetos, toda la memoria se liberaría de forma automática.
>
> Hasta pronto.
> --
> Saludos,
> Salvador mailto:salvador en conclase.net
> Con Clase: http://www.conclase.net
> Blog con Clase: http://blogconclase.wordpress.com
>
>
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>
--
MIGUEL ALEJANDRO JIMENEZ R.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20140313/663fc485/attachment.html>
Más información sobre la lista de distribución Cconclase