Mas precisamente me está pasando esto:

Base *b;
Derivada d;

b = &d;

Cuando hago b->metodo() llama a los metodos de d. Ok hasta ahi.
Ahora como hago para tener una copia de b de nombre c que cuando diga

c->metodo()

siga llamando a los metodos de d;

Gracias por el tiempo. Saludos.

----- Original Message ----- From: "personaje" <[EMAIL PROTECTED]> To: "Una lista para consultas de programación" <[email protected]>
Sent: Saturday, October 20, 2007 10:19 PM
Subject: Re: [Prog] Constructores de Copia.


On 10/20/07, Rubén Daddario <[EMAIL PROTECTED]> wrote:


Buenas. Espero ser breve.

Cual es la forma correcta de crear un constructor de copia para una clase
hija??
El problema que tengo es que si a un objeto padre le asigno un objeto hijo,
cuando hago la copia de padre no me copia los atributos de hijo.


El polimorfismo se logra con punteros o referencias, no con instancias...

Si a una instancia de la clase base, le asignas una instancia de la
clase derivada, sólo te va a copiar la parte base, no se va a
transformar mágicamente en la clase derivada, porque no tiene
conocimiento de la clase base...

Lo que vos estás buscando hacer se logra con punteros o referencias...
si tenés un puntero a la clase base y lo usás para apuntar a una clase
derivada todo funciona bien, claro que ahí no entra en juego el ctor
de copia.

saludos

_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion

__________ NOD32 2604 (20071019) Information __________

This message was checked by NOD32 antivirus system.
http://www.eset.com



_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion

Responder a