Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/01/2009, 19:19
abudemio
 
Fecha de Ingreso: enero-2009
Mensajes: 2
Antigüedad: 15 años, 3 meses
Puntos: 0
Crear un vector de distintas clases

Hola, tengo un problema que no se por donde coger, ya que tengo que hacer un vector, o algún tipo de almacen, en el que meter clases de diferentes tipos.
El problema es que tengo una clase abstracta de la que hereda otra clase que si define sus metodos. A mi me gustaria definir un vector del tipo de la clase abstracta por que hay varias clases que la implementan, es decir, que tengo:

class Animal{
public:
Animal();
~Animal();
virtual int Comer();
}

class Perro : public Animal{
public:
Perro();
~Perro();
int comer();
}

class Gato: public Animal{
public:
Gato();
~Gato();
int comer();
}

class Mascotas{
public:
almacen_de_clases_distintas;
int n_animales;
añadir_mascota(Animal a);
}

me gustaría saber que tipo debería tener "almacen_de_clases_distintas", ya que no me deja poner "vector<Animal> anim;", que es lo que me gustaría para poder tener a todas las mascotas en una sola estructura.
Gracias