Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Herencia y polimorfismo dentro de un vector (https://www.clubdelphi.com/foros/showthread.php?t=38483)

eljose 15-12-2006 19:30:17

Herencia y polimorfismo dentro de un vector
 
Hola, estoy con c++ builder intentando hacer un vector de la librería STL que contenga objetos de la classe TSimbolo (una clase mía). Esta clase es padre de otras que heredan de ella. En realidad el vector será de las subclases, aunque lógicamente lo tengo que inicializar como TSimbolo para que pueda contenerlas a todas.
Una de esas clases es TNota, que redefine un método virtual de TSimbolo llamado lista(). Este código funciona:

TNota * aux = new TNota();
TSimbolo * s = aux;
s->lista();

En este caso la función que se ejecuta es la de la clase TNota.

Sin embargo Este código:
(en .h): std::vector <TSimbolo> P;


TNota * aux = new TNota();
P.push_back(*aux);
P[0].lista();

En este caso ejecuta la función de TSimbolo, no la de TNota que es lo que quiero.
¿Alguna idea?


La franja horaria es GMT +2. Ahora son las 12:22:29.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi