This article can be obsolete: Actual documentation online

Nested functions


There aren't nested functions in C++. The automatic translation of nested Delphi functions replaces the inner functions by new member functions. The parameters and the declared variables of the outer function are passed to these new functions.


function TNested.Test(iOuterParam, 
                      iTwiceParam : Integer): Integer;
var
 iFunctionVar : Integer;

 procedure NestedTest(iInnerParam, iTwiceParam : Integer);
 begin
 result := iFunctionVar + 
           iClassVar + 
           iOuterParam + 
           iInnerParam + 
           iTwiceParam;
 end;

begin
 iClassVar := 1;
 iFunctionVar := 2;
 NestedTest(3, 4);
 result := result + iTwiceParam;
end;
->

void __fastcall TNested::NestedTest ( int iInnerParam, 
                                      int iTwiceParam, 
                                      int& iOuterParam, 
                                      int& result, 
                                      int& iFunctionVar )
{
  result = iFunctionVar + 
           iClassVar + 
           iOuterParam + 
           iInnerParam + 
           iTwiceParam;
}

int __fastcall TNested::Test ( int iOuterParam, 
                               int iTwiceParam )
{
  int result;
  int iFunctionVar;
  iClassVar = 1;
  iFunctionVar = 2;
  NestedTest( 3, 4, iOuterParam, result, iFunctionVar );
  result = result + iTwiceParam;
  return result;
}

   deutsch Deutsch

 
Latest News
01/30/12
Delphi2Cpp 1.6.3 Better construction of objects [more...]

01/05/12
Delphi2Cpp 1.6.2 Resource strings and more [more...]



[from case study...]

"A masterpiece -- Delphi2Cpp has exceeded all my expectations by far."


Tony Hürlimann
virtual-optima 08/20/2011



"First off, I have to say WOW! Delphi2Cpp is doing a *fantastic* job!"


Daniel Flower
linkrealms 01/15/2011


 
This website is generated from plain text with [Minimal Website ]

Minimal Website
Minimal Website is made with TextTransformer

TextTransformer
TextTransformer is made with Borland CBuilder

  borland