Am 05.10.2013 22:57 schrieb "Daniel Gaspary" <dgasp...@gmail.com>: > > I have created an example to show the different results I got due to > where the implementation of a object is . > > The code is at http://pastebin.com/wY2qmZFm > > If you cut and paste the code block at "Location A" to the "Location > B" the result of the program changes. > > At Location A the method of the helper is used. At Location B it is not. > > My questions are > > Is this right?
Yes. > Why? At location A the helper is not yet declared, thus GetAnotherString uses the GetString function of its own class. On location B the helper is already declared and thus the implementation of GetAnotherString will pick up the helper's GetString function instead. As normally helpers aren't declared in the same unit as their extended type this isn't necessarily that obvious. ;) Regards, Sven
_______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal