Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Aclaracion de overload (https://www.clubdelphi.com/foros/showthread.php?t=5038)

tica 06-11-2003 15:49:26

Aclaracion de overload
 
Hola:

Tengo dos funciones algo asi:


function genCod():string: overload;
function genCod():integer: overload;


Me sale un error de

Declaration of 'genCod' differs from previous declaration


Segun tengo entendido las funciones sobrecargadas pueden diferir de acuerdo al tipo de dato que devuelven y/o bien de acuerdo al numero de parametros.

Alguna sugerencia?

delphi.com.ar 06-11-2003 16:05:45

La sobrecarga de procedimientos, se refiere a procedimientos o funciones con el mismo tipo de resultado pero diferentes parámetros.


Código:

function GetValue(Value: integer): string; overload;
function GetValue(Value: string): string; overload;


Saludos!

roman 06-11-2003 16:05:45

Cita:

tica comentó:
Segun tengo entendido las funciones sobrecargadas pueden diferir de acuerdo al tipo de dato que devuelven y/o bien de acuerdo al numero de parametros.
Es incorrecto. Debe diferir en sus argumentos.

// Saludos

roman 06-11-2003 16:09:59

Por cierto, si te preguntas por qué es así la razón es muy sencilla. El compilador podría distinguir entre ambas declaraciones fácilmente pero sería más difícil hacerlo en llamadas a la función. Una función puede llamarse sin ser asignada a ningún valor, esto es, como si fuera un procedimiento y el compilador ya no tendría cómo saber cuál de ambas versiones usar. Y aún asignándola a un valor, ¿qué pasa si es es un variant? Lo mismo.

// Saludos


La franja horaria es GMT +2. Ahora son las 03:14:09.

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