Einzelnen Beitrag anzeigen

Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.340 Beiträge
 
Delphi 11 Alexandria
 
#1

Klassen-Typ als Parameter?

  Alt 14. Sep 2017, 07:43
Hallo,
ich "bastel" gerade an einer Vorbereitung zu einem neuen Projekt und habe dabei folgende Konstruktion:
Delphi-Quellcode:
  tBase = class(TObject)
  private
  end;

  tBaseDesc1 = class(tBase)
  private
  public
    constructor Create(aXMLNode : IXMLNode); virtual;
    destructor Destroy; override;
  end;

  tBaseDesc2 = class(tBase)
  private
  public
    constructor Create(aXMLNode : IXMLNode); virtual;
    destructor Destroy; override;
  end;
// u.s.w. (ca. 80 Ableitungen von tBase)
In einigen Konstruktoren muss ich Objekte erzeugen, wobei der Source für einige Teile nahezu identisch ist. Da ich es hasse, immer fast gleichen Source zu schreiben, möchte ich da optimieren. Das Problem ist dabei, dass ich in diesen kurzen Blocken auch unterschiedliche Klassen verwende:
Delphi-Quellcode:
// vNL : IXMLNodeList;
   if Assigned(vNL.FindNode('MyNodeName')) then
   begin
     fBaseDescX := tBaseDescX.Create(vNL.FindNode('MyNodeName'));
   end
   else
   begin
     fBaseDescX := nil;
   end;
Mein Ziel ist es, dafür eine Methode zu haben, die mir fBaseDescX liefert. Dabei müsste ich als Parameter folgendes übergeben:
- MyNodeName
- vNL
- tBaseDescX

Die ersten Beiden sind ja kein Problem, aber bei dem Klassen-Typ fällt mir nichts brauchbares ein.

Habt Ihr Anregungen oder Lösungen dafür?
Peter
  Mit Zitat antworten Zitat