Ver Mensaje Individual
  #2  
Antiguo 24-11-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Probá de este modo:
Código:
class TBase {  // clase abstracta (tiene al menos una función virtual pura)
public:
  virtual void __fastcall Funcion(int Param) = 0;  // pure virtual
};

class TDerivada: public TBase {  // derivada de Base
public:
  void __fastcall Funcion(float Param) {
    ShowMessage(FloatToStr(Param * 2));
  };
};

/* llamada de ejemplo */
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 TDerivada *D;
 D->Funcion(3.141592654);
}
Si TDerivada no proporciona una definición del método Funcion, se convertirá en una función pure virtual de la clase TDerivada.
Por otro lado, si llamás a una función virtual pura directa o indirectamente te va a provocar un error de ejecución.

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita