[fpc-pascal]RE: Defining Records on the fly:

Jeff Pohlmeyer yetanothergeek at yahoo.com
Wed Feb 18 19:55:54 CET 2004


Since Free Pascal supports function overloading,
you could do something like this:


Function CheckPoint(X, Y:real): Boolean;
Begin
  {Does something here..}
end;


Function CheckPoint(aPoint: tMyRec): Boolean;
Begin
  Result:=CheckPoint(aPoint.X, aPoint.Y);
end;


// So you can use it either way:

var
  MyRec:tMyRec;
begin
  if CheckPoint(MyRec) then {do stuff};
  if CheckPoint(1.2, 2.2) then {do more stuff};
end;


> Here is why I was wondering why you couldn't, say I have this type:
> Type tMyRec = Record X, Y : Real; End;
> 
> And I have this function:
> 
> Function CheckPoint(aPoint: tMyRec): Boolean;
> Begin
>   {Does something here..}
> end;
> 
> begin
>   CheckPoint((X:1.2;Y:2.2));
> end.


__________________________________
Do you Yahoo!?
Yahoo! Mail SpamGuard - Read only the mail you want.
http://antispam.yahoo.com/tools




More information about the fpc-pascal mailing list