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]
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal