[fpc-pascal] same routine with different parameters?
Mark Morgan Lloyd
markMLl.fpc-pascal at telemetry.co.uk
Tue Oct 29 19:35:09 CET 2013
waldo kitty wrote:
> question: in simple language, how can i have a routine with differing
> parameters like some routines in FPC and Lazarus do? i've never
> attempted this before and it is completely alien to my experience but i
> do use the functionality quite a lot with existing routines...
>
> description: i have a class object with an internal routine that i want
> to be able to pass no or different parameters to.
>
> example: procedure MyObject.MyRoutine;
> procedure MyObject.MyRoutine(VarA : SomeType);
> procedure MyObject.MyRoutine(VarA : string; VarB: integer);
>
> at one point, the first instance would be used... at another point one
> of the other instances would be used with the only difference being the
> parameters that are passed or not... i know that i would have individual
> instances with the necessary header and code for each... i just don't
> know if there is anything else special that needs to be done or if it
> can be done with an internal class object routine..
Just give it a whirl as you've shown, I think you've got it right.
Another useful variant is giving *the* *last* parameter an optional
value, which will allow you to omit the parameter:
procedure MyObject.MyRoutine(const VarA : string; VarB: integer= -1);
--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk
[Opinions above are the author's, not those of his employers or colleagues]
More information about the fpc-pascal
mailing list