Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi TRttiMember und seine Kinder - Wert lesen und setzen (https://www.delphipraxis.net/176044-trttimember-und-seine-kinder-wert-lesen-und-setzen.html)

Der schöne Günther 8. Aug 2013 14:49

Delphi-Version: XE2

TRttiMember und seine Kinder - Wert lesen und setzen
 
Wo hinein kann ich bei einem Objekt Daten stecken? Mir fallen Felder und Properties ein. Gibt es mehr?

Für die abenteuerliche RTTI-Wildwasserfahrt gibt es
  • TRttiMember = class(TRttiNamedObject)
  • TRttiProperty = class(TRttiMember)
  • TRttiField = class(TRttiMember)

Jetzt gibt es einmal die Methode
Delphi-Quellcode:
TRttiProperty.GetValue(..)
und einmal
Delphi-Quellcode:
TRttiField.GetValue(..)
, allerdings keine abstrakte Methode in der Überklasse TRttiMember welche dann von seinen beiden Kindern implementiert wird. Gleiche Situation für
Delphi-Quellcode:
SetValue(..)
.

Warum ist das so? Ich sehe keinen Grund.

Der schöne Günther 12. Aug 2013 14:09

AW: TRttiMember und seine Kinder - Wert lesen und setzen
 
*stups*


Keiner eine Ahnung? Ich fands komisch.

Uwe Raabe 12. Aug 2013 14:53

AW: TRttiMember und seine Kinder - Wert lesen und setzen
 
Delphi-Quellcode:
TRTTIMember
hat ja noch andere Nachfahren:
  • Delphi-Quellcode:
    TRttiIndexedProperty
    verwendet ein
    Delphi-Quellcode:
    Array of TValue
    beim Get/SetValue für die Indizes
  • Delphi-Quellcode:
    TRttiMethod
    hat überhaupt kein Get/SetValue.

Der schöne Günther 12. Aug 2013 15:03

AW: TRttiMember und seine Kinder - Wert lesen und setzen
 
Alles klar, danke! :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:49 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz