In neueren Delphi-Versionen können Klassen geschachtelt werden. Beispiel:
type
TOuterClass = class
strict private
myField: Integer;
public
type
TInnerClass = class
public
myInnerField: Integer;
procedure innerProc;
end;
procedure outerProc;
end;
implementation
procedure TOuterClass.TInnerClass.innerProc; begin // ... end;
procedure foo; var x: TOuterClass; y: TOuterClass.TInnerClass; begin x := TOuterClass.Create; x.outerProc; //... y := TOuterClass.TInnerClass.Create; y.innerProc; end;
Delphi2C# converts this to:
class TOuterClass : public System::TObject
{
typedef System::TObject inherited;
private:
int myField;
public:
class TInnerClass : public System::TObject
{
typedef System::TObject inherited;
public:
int myInnerField;
void innerProc();
void InitMembers(){myInnerField = 0;}
public:
TInnerClass() {InitMembers();}
};
void outerProc();
void InitMembers(){myField = 0;}
public:
TOuterClass();
};
TOuterClass::TOuterClass() {InitMembers();}
void TOuterClass::TInnerClass::innerProc()
{
// ...
}
void foo()
{
TOuterClass* x = nullptr;
TOuterClass::TInnerClass* y = nullptr;
x = new TOuterClass();
x->outerProc();
//...
y = new TOuterClass::TInnerClass();
y->innerProc();
}
english
| Letzte Neuigkeiten |
|
18.11.25
Delphi2Cpp 2.6: Delphi Interfaces [more...] |
|
28.10.24
Delphi2Cpp 2.5: in Groß- und Kleinschreibung mit Deklarationen übereinstimmende Symbolnamen [more...] |
|
[aus Fallstudie...] "Eine Meisterleistung -- Delphi2Cpp hat alle meine Erwartungen weit übertroffen." Tony Hürlimann
virtual-optima
29.08.2011
|
|
"Ich muss mich nochmal für deinen Einsatz und die Qualität deiner Arbeit bedanken, das ist absolut überdurchschnittlich ..." Gerald Ebner
Significant Software
22.01.2010
|
|
Diese Homepage ist aus einfachen Texten mit [Minimal Website ]generiert.
|
Minimal Website ist mit Hilfe des TextTransformers hergestellt.
|
Der TextTransformer ist gemacht mit dem Borland
CBuilder
|