Einzelnen Beitrag anzeigen

Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#9

Re: [OOP] Objekt anderen Objekten bekannt machen

  Alt 16. Jan 2010, 15:09
War der 1. Treffer bei Google, und weil es auf der Embarcadero-Webseite war, bin ich davon ausgegangen, dass es wohl schon stimmen wird...

[edit]
Zitat von DJ-SPM:
Ich habe den ganzen DB-Kram ja in einer extra-Unit. Ist es so schlimm, wenn ich für die betreffenden Units (zwei Stück) eine globale Variable deklariere und somit von allen Objekten aus die DB nutzen kann? Mehrere Instanzen sind ja sogar ok - das wollte ich da.
Was ich nicht ganz verstehe, ist deine Aussage, dass mehrere Instanzen ok wären - ich dachte, dass genau das (sinnvollerweise) vermieden werden sollte. Ein Problem ist, dass du immer von "DB-Objekten" sprichst, ohne genauer zu erläutern, was du damit meinst. Außerdem vermischt du Objekte mit Klassen.

Ich habe irgendwie das Gefühl, dass wir aneinander vorbeireden.

Vielleicht suchst du ja auch einfach klassenstatische Variablen?
Delphi-Quellcode:
  
  TJKDB = class(TDBBase_FB)
  public
    constructor Create;
    destructor Destroy; override;
    procedure Save(Data: TObject);
  end;

  TJKObject = class(TObject)
  strict private
    class var FDBO: TJKDB;
  strict protected
    class property DBO: TJKDB read FDBO;
  public
    constructor Create;
  end;

implementation

constructor TJKObject.Create;
begin
  if not Assigned(FDBO) then
    FDBO := TJKDB.Create;
end;
Auf die Eigenschaft DBO kannst du dann in allen abgeleiteten Klassen zugreifen, das dahinterliegende Objekt wird aber nur einmalig instanziiert.
[/edit]
  Mit Zitat antworten Zitat