Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Definición de procedimientos y/o funciones (https://www.clubdelphi.com/foros/showthread.php?t=47402)

mauqu 27-08-2007 15:20:10

Definición de procedimientos y/o funciones
 
Estimados, como siempre muchas gracias por las respuestas a mis consultas.

Es posible definir solo la cabecera de una función o un procedimiento, por ejemplo en una clase padre y luego en la clase que herede esta clase padre (en la clase hija) definir lo que va a hacer esta función o procedimiento?

como se logra esto?

Slds

Gracias.

maeyanes 27-08-2007 15:56:28

Hola...

Lo que tu quieres hacer se llama abstracción... es decir.. tienes algo como:

Código Delphi [-]
TPadre = class
protected
  procedure MetodoA: virtual; abstract;
public
  procedure MetodoB;
end;

THijo = class(TPadre)
protected
  procedure MetodoB; override;
end;

implementation

// Implementación de los métodos de TPadre
procedure TPadre.MetodoB;
begin
  MetodoA
end;

// Implementación de los métodos de THijo
procedure THijo.MetodoA;
begin
  ShowMessage('Implementación de MetodoA')
end;

Espero que este pequeño ejemplo aclare tus dudas...



Saludos...

delphi.com.ar 27-08-2007 16:00:19

Por lo que entiendo, preguntas si es posible definir métodos abstractos:

Código Delphi [-]
TPadre = class
public 
  procedure MiProcedure; virtual; abstract;
end;

THijo = class(TPadre)
public
  procedure MiProcedure; override;
end;

implementation

procedure THijo.MiProcedure;
begin
  //
end;
En esta caso el métido MiProcedure es abstracto, si instancias un objeto del tipo TPadre y llamas a este métido, producirá un "abstract error", las clases que herendan de TPadre no estan obligadas a implementar el método, pero si el método no es implementado no puede ser llamado.

Saludos!


La franja horaria es GMT +2. Ahora son las 07:16:10.

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