Is there a native syntax to access the outer function Result variable from inner function in Delphi? -


consider:

function outerfunc: integer;   function innerfunc: integer;   begin     // here i'd access outerfunc.result variable     // both reading , writing value     outerfunc.result := outerfunc.result + 12;   end; begin end; 

is there native syntax access outerfunc result variable inside innerfunc? or way pass parameter, in following?

function outerfunc: integer;   function innerfunc(var outerresult: integer): integer;   begin   end; var   i: integer; begin   := innerfunc(result); end; 

you can assign result functions assigning function name, original way in pascal:

function myfunc: integer; begin   myfunc := 2;   // equal following   result := 2; end; 

so in case can write

function outerfunc: integer;   function innerfunc: integer;    begin     outerfunc := 12;   end; begin end; 

beware however, using function name in statement block anyware else on left side of assignment operator results in recursive call, , therefore different how predefined result works.

in other words, can not access set value of outerfunc within innerfunc. need use e.g. local variable in outer scope defined before innerfunc accessible innerfunc:

function outerfunc: integer; var   outerresult: integer;    function innerfunc: integer;    begin     outerresult := 0;     outerresult := outerresult + 12;   end; begin   result := outerresult; end; 

for more details refer function declarations in the documentation.


Comments

Popular posts from this blog

Command prompt result in label. Python 2.7 -

javascript - How do I use URL parameters to change link href on page? -

amazon web services - AWS Route53 Trying To Get Site To Resolve To www -