Thema: Delphi Adresse eines Objektes

Einzelnen Beitrag anzeigen

uuulf

Registriert seit: 2. Jul 2009
4 Beiträge
 
#1

Adresse eines Objektes

  Alt 2. Jul 2009, 11:12
Delphi-Quellcode:
unit A;
interface
uses
 unit B;
var
  ppSystem: array of ^TSystem;
  res: Integer;
begin
 [ppSystem wird von Hardware mit Adressen gefüllt]
  //Die Adressen sollen auf die Instanzen von TSystem zeigen, hier als Beispiel nur eine Instanz
  ppSystem[0]^ := TSystem.Create();
  //Methode der Instanz wird aufgerufen, möchte vermeiden hier den Zeiger auf die Instanz mitzugeben
  res:= ppSystem[0]^.open;
end;
Delphi-Quellcode:
unit B;
type TSystem = class(TObject)
  private
    function open(): Integer;

implementation
function TSystem.open: Integer;
begin
  //Hier benötige ich den Zeiger auf die Instanz
  //Self ist hier wohl der falsche Ansatz.
  result := System_open(self); //self <> ppSystem[0]
end;
Ich benötige in der Instanz von TSystem einen Zeiger auf sich selbst. Ich gehe davon aus, dass self eben genau auf seine Instanz zeigt, sowie in ppSystem[0] ebenso der Zeiger auf diese Instanz enthalten ist.
Aber self ist <> ppSystem[0]. Könnt ihr mir helfen?
  Mit Zitat antworten Zitat