Einzelnen Beitrag anzeigen

martin_

Registriert seit: 19. Mai 2008
Ort: Österreich
89 Beiträge
 
#1

Rtti und Attribute in Delphi 2010

  Alt 25. Aug 2011, 10:43
Hallo,
bin gerade dabei mir das Beispiel von http://www.malcolmgroves.com/blog/?p=476 anzusehen und habe ein Verständnisproblem mit Attributen.
Und zwar bei
Delphi-Quellcode:
  MyAttribute = class(TCustomAttribute)
  private
    FName: string;
    FAge: Integer;
  public
    constructor Create(const Name : string; Age : Integer);
    property Name : string read FName write FName;
    property Age : Integer read FAge write FAge;
  end;
Delphi-Quellcode:
 TMyClass = class
  public
    [MyAttribute('Malcolm', 39)]
    procedure MyProc(const s : string);
    [MyAttribute('Julie', 37)]
    procedure MyOtherProc;
  end;
Was passiert bei [MyAttribute('Malcolm', 39)]? Ist es richtig das in der Methode MyProc ein neues Objekt der Klasse MyAttribute mit den Inhalten ('Malcolm', 39) erzeugt wird?
Das wäre dann gleich mit:
Delphi-Quellcode:
procedure MyProc (...)
var
 a : MyAttribute
begin
  a := MyAttribute.create('Malcolm', 39);
end;
Nur wie erfolgt der Zugriff auf das mittels [MyAttribute('Malcolm', 39)] erzeugte Objekt? Kann man sich da auch so etwas wie var a : MyAttribute anlegen, um nicht jeden Zugriff über TRttiContext durchzuführen?
  Mit Zitat antworten Zitat