On Dec 20, 2007 2:43 PM, personaje <[EMAIL PROTECTED]> wrote:
> On Dec 20, 2007 2:35 PM, Leandro Lucarella <[EMAIL PROTECTED]> wrote:
> > personaje, el 20 de diciembre a las 13:43 me escribiste:
> > > > No. Y no tiene sentido, cuando llames a c.Run(1) a cual llama? Y si no
> > > > llamás a los Run del padre, menos sentido le veo.
> > >
> > > la idea es así:
> > >
> > > A* pa;
> > > B* pb;
> > > C* pc = new C;
> > >
> > > pa = pc;
> > > pb = pc;
> > >
> > > pa->Run(); // corre la versión A
> > > pb->Run(); // corre la versión B
> >
> > Entonces vos no querés que sea virtual! El virtual es justamente lo que
> > hace que pa->Run() llame a C::Run en vez de a A::Run!
>
> nono, quiero reimplementar los métodos, pero que sean distintos según
> venga el llamado por un puntero A o B...

es que si llamas al de A o al de B no estarias reimplementando nada...
en el caso que mostraste estaria funcionando como queres vos y sin
reimplementar nada... por ahi no entendemos lo que queres decir...
porque no pasas el ejemplo mas concreto?


-- 
Lautaro

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

Responder a