Ver Mensaje Individual
  #4 (permalink)  
Antiguo 03/02/2014, 06:06
dehm
 
Fecha de Ingreso: septiembre-2010
Mensajes: 494
Antigüedad: 13 años, 7 meses
Puntos: 10
Respuesta: Error C++ al intentar pasar objetos de clase deriavada a clase base

Hola:

¿Estas líneas?:

Código C++:
Ver original
  1. vehicle[i] = static_cast<Vehicle*> (&sc);
  2. vehicle[i+1] = static_cast<Vehicle *> (&ca);
  3. vehicle[i+2] = static_cast<Vehicle *> (&ht);
  4. vehicle[4] = reinterpret_cast<Vehicle*>(&fg1);
  5. vehicle[5] = reinterpret_cast<Vehicle*>(&fg2);

¿Es la forma de pasar los objetos de la clase derivada a la clase base?
Lo pregunto porque no lo sé, y parece un tema interesante.

Por otro lado, yo siempre hago el método clásico

Código C++:
Ver original
  1. vehicle [i+1] = new Scooter("YAMAHA","123456");
  2. vehicle[i+1]->print();

Por cierto, que tienes un fallo en los constructores:
Código C++:
Ver original
  1. Scooter(string b, string p) : Vehicle(brand,plate){}

debería ser:

Código C++:
Ver original
  1. Scooter(string b, string p) : Vehicle(b,p){}

(y así en los demás)