假设我们有以下代码片段:
TMyType = Pointer;
TMyClass = class
procedure myMethod (argument : TMyType);
end;
我一直在使用Rtti来反思这样一个类,这样我就可以写出方法签名,包括参数类型。但是,当我使用Rtti时,我得到:
TMyClass = class
procedure myMethod (argument : Pointer);
end;
这不是获取名称TMyType,而是获得指针。我使用ParamType.name来获取参数类型的名称。
我的问题是,无论如何要获得开发人员实际声明参数类型的名称,即TMyType?由于ParamType.name不返回预期的类型名称,我假设未在类中声明的类型没有Rtti信息?
使用Delphi XE
答案 0 :(得分:1)
Sertac Akyuz和Remy Lebeau都回答了这个问题。我提供以下答案:
声明类型而不是别名TMytype = type Pointer