Har*_*uki 5 delphi rtti delphi-xe
我实际上是在尝试使用Rtti来实现泛型方法调用程序.它应该像这样工作:
所以我需要类引用以获取其Rtti信息并寻找我想要调用的方法.
如果没有实现我想要使用的类的类引用列表,有没有办法做到这一点?
要使用他的名称获取类引用,必须使用TRttiContext.FindType传递类名称的 函数并使用AsInstance属性检索实例 ,然后可以调用类的构造函数.
var
Instance : TRttiInstanceType;
ctx : TRttiContext;
mClass : TValue;
begin
ctx := TRttiContext.Create;
Instance := ctx.FindType(ClassName).AsInstance; //ClassName is something like 'Classes.TStringList';
mClass := Instance.GetMethod('Create').Invoke(Instance.MetaclassType,[]);
//do your stuff here
end;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2449 次 |
| 最近记录: |