将TRttiProperty映射到等效的类定义

时间:2012-03-14 16:10:17

标签: delphi reflection properties delphi-xe rtti

我想知道是否有可能直接引用类定义以便将它与RTTI结合使用(将属性映射到TRttiProperty等)。

E.g。

我想使用TMyClass.MyProperty作为TRttiProperty,而不必通过名称/字符串解析它,这将保持我的代码和编译器完整性,因为字符串变量可能拼写错误等。

由于

1 个答案:

答案 0 :(得分:5)

假设你想要做这样的事情

 P:=TRttiProperty(TMyClass.MyProperty);

或写一个像这样的函数

function GetPropertyInfo(P: reference to property):TRttiProperty;

这是不可能的,要做到这一点,你将需要哪个delphi支持属性引用。因此,访问(引用)类属性的唯一方法是通过字符串使用他的名字。